Skip to content

Instantly share code, notes, and snippets.

@mmacfadden
Last active April 5, 2018 02:41
Show Gist options
  • Save mmacfadden/2c923a6c7209308745296d489289f316 to your computer and use it in GitHub Desktop.
Save mmacfadden/2c923a6c7209308745296d489289f316 to your computer and use it in GitHub Desktop.
Dagre Order Issue
const dagre = require('dagre');
const graphlib = require('graphlib');
const graphJson = {
"options": {"directed": true, "multigraph": true, "compound": true},
"nodes": [{
"v": "6b127a17-4484-4abc-a1e9-b0754586df5a",
"value": {"width": 1, "height": 1}
}, {
"v": "2647eb87-eeea-4f3c-8ad5-a49eeeee97ed",
"value": {"width": 300, "height": 300},
"parent": "6b127a17-4484-4abc-a1e9-b0754586df5a"
}, {
"v": "461f4912-39dc-4c9e-942b-69d28c3af301",
"value": {"width": 1, "height": 1}
}, {
"v": "088ba8b1-08ab-4006-9561-78834eb0568f",
"value": {"width": 300, "height": 300},
"parent": "461f4912-39dc-4c9e-942b-69d28c3af301"
}, {
"v": "732d1cc6-1e9c-46d0-8daf-7d928920445d",
"value": {"width": 1, "height": 1}
}, {
"v": "af92a4d0-1e80-4244-aa11-d365abbe9bbd",
"value": {"width": 300, "height": 300},
"parent": "732d1cc6-1e9c-46d0-8daf-7d928920445d"
}, {
"v": "5b1c4a93-c06f-4f5d-a03b-1bb5e6e29554",
"value": {"width": 1, "height": 1}
}, {
"v": "6a4d8232-0c68-4bbc-9af2-8e9d7313ae8d",
"value": {"width": 300, "height": 300},
"parent": "5b1c4a93-c06f-4f5d-a03b-1bb5e6e29554"
}, {
"v": "2df5bdc7-5810-4fa9-b161-009bf1be4310",
"value": {"width": 1, "height": 1}
}, {
"v": "d236a7c3-148b-4d07-a0c8-b736a3ec9083",
"value": {"width": 300, "height": 300},
"parent": "2df5bdc7-5810-4fa9-b161-009bf1be4310"
}, {
"v": "6d262a28-3752-4dce-bef2-72ec99afbeae",
"value": {"width": 1, "height": 1}
}, {
"v": "a5531c1d-5243-496e-91fe-448ed774ff5f",
"value": {"width": 300, "height": 300},
"parent": "6d262a28-3752-4dce-bef2-72ec99afbeae"
}, {
"v": "763a4465-4e7c-470e-b60c-2ac0674ab44d",
"value": {"width": 1, "height": 1}
}, {
"v": "93748001-c84b-4182-9ff4-bd930a4de6e0",
"value": {"width": 300, "height": 300},
"parent": "763a4465-4e7c-470e-b60c-2ac0674ab44d"
}, {
"v": "0b471df4-8c58-43ab-9e29-355be2bdce78",
"value": {"width": 300, "height": 300},
"parent": "5b1c4a93-c06f-4f5d-a03b-1bb5e6e29554"
}, {
"v": "7bdf40bc-36b0-462b-b560-26230fa03af7",
"value": {"width": 300, "height": 300},
"parent": "6d262a28-3752-4dce-bef2-72ec99afbeae"
}, {
"v": "dbd8fc71-3e9c-415f-8b63-893c8398849f",
"value": {"width": 300, "height": 300},
"parent": "6d262a28-3752-4dce-bef2-72ec99afbeae"
}, {
"v": "764159fa-b830-4637-86f0-37ba974cfb2b",
"value": {"width": 1, "height": 1}
}, {
"v": "8e22a8b7-2900-456a-a0b2-9281f8c1e416",
"value": {"width": 300, "height": 300},
"parent": "764159fa-b830-4637-86f0-37ba974cfb2b"
}, {
"v": "f0d225f5-3092-49ce-94da-85626f7debd2",
"value": {"width": 300, "height": 300},
"parent": "732d1cc6-1e9c-46d0-8daf-7d928920445d"
}, {
"v": "6f86b84e-f853-4543-80fe-a6ef576b7981",
"value": {"width": 300, "height": 300},
"parent": "763a4465-4e7c-470e-b60c-2ac0674ab44d"
}, {
"v": "b09f3217-2e36-44a8-8dcb-a5317983c4fb",
"value": {"width": 300, "height": 300},
"parent": "5b1c4a93-c06f-4f5d-a03b-1bb5e6e29554"
}, {
"v": "aa8a79e3-b6b4-4352-9828-086307904638",
"value": {"width": 300, "height": 300},
"parent": "2df5bdc7-5810-4fa9-b161-009bf1be4310"
}],
"edges": [{
"v": "2647eb87-eeea-4f3c-8ad5-a49eeeee97ed",
"w": "7bdf40bc-36b0-462b-b560-26230fa03af7",
"name": "c1eec7b1-3016-483f-b79b-88edbb551b54",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "dbd8fc71-3e9c-415f-8b63-893c8398849f",
"w": "2647eb87-eeea-4f3c-8ad5-a49eeeee97ed",
"name": "b3202df2-0a7c-4982-ba46-6c33f05f7721",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "6a4d8232-0c68-4bbc-9af2-8e9d7313ae8d",
"w": "0b471df4-8c58-43ab-9e29-355be2bdce78",
"name": "198193b2-3fa6-4831-a760-9e0970ef7a57",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "6f86b84e-f853-4543-80fe-a6ef576b7981",
"w": "93748001-c84b-4182-9ff4-bd930a4de6e0",
"name": "9ba92932-bf92-48aa-8bd1-4df6308f5494",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "b09f3217-2e36-44a8-8dcb-a5317983c4fb",
"w": "6a4d8232-0c68-4bbc-9af2-8e9d7313ae8d",
"name": "88a4530d-3a1c-4aea-a1db-8363869254c3",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "aa8a79e3-b6b4-4352-9828-086307904638",
"w": "d236a7c3-148b-4d07-a0c8-b736a3ec9083",
"name": "1ac811cb-514a-41b5-819b-3720a740da0e",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "f0d225f5-3092-49ce-94da-85626f7debd2",
"w": "a5531c1d-5243-496e-91fe-448ed774ff5f",
"name": "af3957b0-4d00-42bc-8185-e69f393eed04",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}, {
"v": "af92a4d0-1e80-4244-aa11-d365abbe9bbd",
"w": "088ba8b1-08ab-4006-9561-78834eb0568f",
"name": "b3c9693e-abc5-4aed-8ff3-2ba3bf0b7815",
"value": {"minLen": 1, "weight": 1, "labelpos": "c", "labeloffset": 0, "width": 0, "height": 0}
}]
};
const graph = graphlib.json.read(graphJson);
const label = {"rankdir":"LR","align":"UL","nodesep":150,"edgesep":30,"ranksep":175,"ranker":"longest-path","marginx":30,"marginy":150};
graph.setGraph(label);
dagre.layout(graph);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment