From your description, I gather you need to visualize directed acyclic graph, or DAG.
A |\ B C / \ D E
A |\ B C \| D
And, no, unfortunately, D3 tree and cluster layouts simply don't support that kind of graphs. Their internal algorithms assume that the data structure is strictly a tree.
However, there are some options. Please see these five related questions for possible approaches:
- d3.js, collapsible tree - how to connect different parents with same child
- D3 Tree layout visualization - Inherit child with multiple parents
- How can I connect two parent node into one child node and how to make a tooltip for each node in the tree pragmatically? in D3 js (SVG)
- How to create d3.js Collapsible force layout with non tree data?
- How do I create a D3.js tree layout with custom child nodes?
- How Can I highlight the parents names and the connection lines when I hover on their child in family tree
- How to connect two points with a line in two different coordinate system/transforms in d3?
- How do I remove all children elements from a node and then apply them again with different color and size?
- How to increase distance between child nodes in a D3 Collapsible Tree?
- How to load data from an internal JSON array rather than from an external resource / file for a collapsible tree in d3.js?
- how to display name of node when mouse over on node in collapsible tree graph
- How to make an interactive tree chart with d3?
- Displaying a D3 tree with multiple parents
- d3 tree - parents having same children
- How can I add zooming to the d3 collapsible tree example?
- d3.js How to make all the nodes collapsed in Collapsible indented Tree
- D3 collapsible Tree different node colors
- How to layout tree with fan-in in d3.js?
- In sequences sunburst, how to give a child the same color of parent?
- Why am I getting different results with same code in D3js?
- Family Tree with multiple parents using D3, VX & React
- how to distinct same keys in first line with d3.csv
- how to use svg:defs to create rect with same height in d3.js?
- How to color different data sets with different colors in dimple.js
- D3 with AngularJs, Multiple charts on same page with different data based on common key
- How to read JSON data from same json for tree layout insteadof reading from other .JSON file?
- d3js: adding same type of elements with different data
- How to create left axis with variable tick interval in tick values and has same distance between tick value
- How to reset svg scaling and fit to screen for random but large maps/datasets with different orientations
More Query from same tag
- Recharts stacked area show wrong yAxis labels?
- How to rescale displayed data in d3.js?
- Dynamically add dimensions to crossfilter
- adding clickable zones to an svg
- Filter/select specific type of data
- Background image inside foreignObject hides other svg elements on Firefox
- Flickering translation with d3 v4 drag function
- Displaying circles for an array of datapoints in d3 and angular?
- How to position the legend to the right of the donut chart
- D3.js Chart Transition Erroring
- Implementing D3FC-Sample for data reduction
- D3 Multiline Chart with Tooltip Transition Issue
- How split line in D3.js when missing data
- Call d3.js zoom behaviour on jquery.UI slide event
- selecting the body of an iframe with D3
- d3 floating bubble chart
- Running D3 in node.js, what am I missing?
- Having trouble with handling meteor js client and server side interactions
- Using d3.js (v5) to read a csv that has no header
- arc.centroid returning (NaN, NaN) in D3
- Labelling a D3 bar chart (w/ positive and negative bars)
- Normalized Stacked Bar Chart to Stacked Bar Chart
- Histogram using d3js
- d3.v3.min.js:1 Error: <svg> attribute height: Expected length, "NaN" while loading a d3 chart in a modal popup
- dc.js making a color range between two colours
- d3.js gantt chart issue
- Parsing specific columns/data from multiple CSV file
- Bind D3.js event to function?
- D3.js events firing on load
- d3js removing a transition of an element