Graph-1
image of Graph-1 click to preview
-
In the above graph there are 2 types of node , "Hidden Node" and "Non Hidden Node" which is connected to another node. The connection is call "edges" .
-
"node" and "edges" data look likes :
let nodes = [
{ id: 1, node_name: "Node-1", is_hiddenable: false, hidden: false },
{ id: 2, node_name: "Node-2", is_hiddenable: false, hidden: false },
{ id: 3, node_name: "Node-3", is_hiddenable: true, hidden: false },
{ id: 4, node_name: "Node-4", is_hiddenable: true, hidden: false },
{ id: 5, node_name: "Node-5", is_hiddenable: true, hidden: false },
{ id: 6, node_name: "Node-6", is_hiddenable: false, hidden: false },
{ id: 7, node_name: "Node-7", is_hiddenable: false, hidden: false },
{ id: 8, node_name: "Node-8", is_hiddenable: true, hidden: false },
{ id: 9, node_name: "Node-9", is_hiddenable: true, hidden: false },
{ id: 10, node_name: "Node-10", is_hiddenable: true, hidden: false },
{ id: 11, node_name: "Node-11", is_hiddenable: false, hidden: false },
{ id: 12, node_name: "Node-12", is_hiddenable: false, hidden: false },
{ id: 13, node_name: "Node-13", is_hiddenable: false, hidden: false },
{ id: 14, node_name: "Node-14", is_hiddenable: true, hidden: false },
{ id: 15, node_name: "Node-15", is_hiddenable: false, hidden: false },
{ id: 16, node_name: "Node-16", is_hiddenable: false, hidden: false },
{ id: 17, node_name: "Node-17", is_hiddenable: true, hidden: false },
{ id: 17, node_name: "Node-18", is_hiddenable: true, hidden: false },
{ id: 17, node_name: "Node-19", is_hiddenable: false, hidden: false },
...
... // can be 'n' number
];
let edges = [
{ from: 1, to: 2, icon: "" },
{ from: 2, to: 3, icon: "-" },
{ from: 3, to: 4, icon: "" },
{ from: 4, to: 5, icon: "" },
{ from: 5, to: 6, icon: "" },
{ from: 2, to: 7, icon: "" },
{ from: 7, to: 8, icon: "-" },
{ from: 8, to: 9, icon: "" },
{ from: 9, to: 10, icon: "" },
{ from: 10, to: 11, icon: "" },
{ from: 2, to: 12, icon: "" },
{ from: 12, to: 16, icon: "" },
{ from: 16, to: 17, icon: "-" },
{ from: 17, to: 18, icon: "" },
{ from: 18, to: 19, icon: "" },
{ from: 12, to: 13, icon: "" },
{ from: 13, to: 14, icon: "-" },
{ from: 14, to: 15, icon: "" },
...
... // can be 'n' number
];
- Hidden Node can be identify, if "is_hiddenable" is true from node array.
- Hidden Node can be hide, if "hidden" is true from node array.
- icon (-/+) can be display, if "icon" is (-/+) from edges array.
- When click on (-) icon which is in between 'node 7' and 'node 8', The 'node 8 , node 9 and node 10' which are 'is_hiddenable', should be "hidden". And the edges { from: 10, to: 11, icon: "" } should update to { from: 7, to: 11, icon: "" }.like in graph 2
Graph-2 image of Graph-2 click to preview
-
When click on (+) icon which is in between 'node 7' and 'node 11', The 'node 8 , node 9 and node 10' which are 'is_hiddenable', should be display. And the edges { from: 7, to: 11, icon: "" } should update to { from: 10, to: 11, icon: "" }.like graph 3
-
"node" and "edges" data for graph2 look likes :
let nodes = [
{ id: 1, node_name: "Node-1", is_hiddenable: false, hidden: false },
{ id: 2, node_name: "Node-2", is_hiddenable: false, hidden: false },
{ id: 3, node_name: "Node-3", is_hiddenable: true, hidden: true },
{ id: 4, node_name: "Node-4", is_hiddenable: true, hidden: true },
{ id: 5, node_name: "Node-5", is_hiddenable: true, hidden: true },
{ id: 6, node_name: "Node-6", is_hiddenable: false, hidden: false },
{ id: 7, node_name: "Node-7", is_hiddenable: false, hidden: false },
{ id: 8, node_name: "Node-8", is_hiddenable: true, hidden: true },
{ id: 9, node_name: "Node-9", is_hiddenable: true, hidden: true },
{ id: 10, node_name: "Node-10", is_hiddenable: true, hidden: true },
{ id: 11, node_name: "Node-11", is_hiddenable: false, hidden: false },
{ id: 12, node_name: "Node-12", is_hiddenable: false, hidden: false },
{ id: 13, node_name: "Node-13", is_hiddenable: false, hidden: false },
{ id: 14, node_name: "Node-14", is_hiddenable: true, hidden: true },
{ id: 15, node_name: "Node-15", is_hiddenable: false, hidden: false },
{ id: 16, node_name: "Node-16", is_hiddenable: false, hidden: false },
{ id: 17, node_name: "Node-17", is_hiddenable: true, hidden: true },
{ id: 17, node_name: "Node-18", is_hiddenable: true, hidden: true },
{ id: 17, node_name: "Node-19", is_hiddenable: false, hidden: false },
];
let edges = [
{ from: 1, to: 2, icon: "" },
{ from: 2, to: 3, icon: "+" },
{ from: 3, to: 4, icon: "" },
{ from: 4, to: 5, icon: "" },
{ from: 5, to: 6, icon: "" },
{ from: 2, to: 7, icon: "" },
{ from: 7, to: 8, icon: "+" },
{ from: 8, to: 9, icon: "" },
{ from: 9, to: 10, icon: "" },
{ from: 10, to: 11, icon: "" },
{ from: 2, to: 12, icon: "" },
{ from: 12, to: 16, icon: "" },
{ from: 16, to: 17, icon: "+" },
{ from: 17, to: 18, icon: "" },
{ from: 18, to: 19, icon: "" },
{ from: 12, to: 13, icon: "" },
{ from: 13, to: 14, icon: "+" },
{ from: 14, to: 15, icon: "" },
];
- Graph-3 image of Graph-3 click to preview
- "node" and "edges" data for graph3 look likes :
let nodes = [
{ id: 1, node_name: "Node-1", is_hiddenable: false, hidden: false },
{ id: 2, node_name: "Node-2", is_hiddenable: false, hidden: false },
{ id: 3, node_name: "Node-3", is_hiddenable: true, hidden: false },
{ id: 4, node_name: "Node-4", is_hiddenable: true, hidden: false },
{ id: 5, node_name: "Node-5", is_hiddenable: true, hidden: false },
{ id: 6, node_name: "Node-6", is_hiddenable: false, hidden: false },
{ id: 7, node_name: "Node-7", is_hiddenable: false, hidden: false },
{ id: 8, node_name: "Node-8", is_hiddenable: true, hidden: true },
{ id: 9, node_name: "Node-9", is_hiddenable: true, hidden: true },
{ id: 10, node_name: "Node-10", is_hiddenable: true, hidden: true },
{ id: 11, node_name: "Node-11", is_hiddenable: false, hidden: false },
{ id: 12, node_name: "Node-12", is_hiddenable: false, hidden: false },
{ id: 13, node_name: "Node-13", is_hiddenable: false, hidden: false },
{ id: 14, node_name: "Node-14", is_hiddenable: true, hidden: true },
{ id: 15, node_name: "Node-15", is_hiddenable: false, hidden: false },
{ id: 16, node_name: "Node-16", is_hiddenable: false, hidden: false },
{ id: 17, node_name: "Node-17", is_hiddenable: true, hidden: true },
{ id: 17, node_name: "Node-18", is_hiddenable: true, hidden: true },
{ id: 17, node_name: "Node-19", is_hiddenable: false, hidden: false },
];
let edges = [
{ from: 1, to: 2, icon: "" },
{ from: 2, to: 3, icon: "-" },
{ from: 3, to: 4, icon: "" },
{ from: 4, to: 5, icon: "" },
{ from: 5, to: 6, icon: "" },
{ from: 2, to: 7, icon: "" },
{ from: 7, to: 8, icon: "+" },
{ from: 8, to: 9, icon: "" },
{ from: 9, to: 10, icon: "" },
{ from: 10, to: 11, icon: "" },
{ from: 2, to: 12, icon: "" },
{ from: 12, to: 16, icon: "" },
{ from: 16, to: 17, icon: "+" },
{ from: 17, to: 18, icon: "" },
{ from: 18, to: 19, icon: "" },
{ from: 12, to: 13, icon: "" },
{ from: 13, to: 14, icon: "+" },
{ from: 14, to: 15, icon: "" },
];
Via Active questions tagged javascript - Stack Overflow https://ift.tt/QNXjJoS
Comments
Post a Comment