Ich versuche das Sankey-Plugin mit d3 zu implementieren. Ich bekomme allerdings nicht die erwartete Ausgabe. Hoffentlich kann jemand helfen. Ich habe auf den einfachsten möglichen Datensatz reduziert. Es gibt 3 Knoten. Ich würde einen Link von Entry zu Exit erwarten und einen von Entry zu Zone1, dann Exit. Hier ist der Satz:Sankey Datenformatierung, Präsentation
const graph = {
nodes: [
{'node': 0, 'name': 'Entry'},
{'node': 1, 'name': 'Zone 1'},
{'node': 2, 'name': 'Exit'}
],
links: [
{"source": 0, "target": 1, "value": 2},
{"source": 1, "target": 2, "value": 2},
{"source": 0, "target": 2, "value": 4}
]
}
Allerdings bin ich nur ein Glied Weg bekommen, und auch sieht es irgendwie püriert Hier ist der Link-Code:
var link = svg.append("g").selectAll(".link")
.data(graph.links)
.enter().append("path")
.attr("class", "link")
.attr("d", path)
.style("stroke-width", function (d) {
return Math.max(1, d.dy);
})
.sort(function (a, b) {
return b.dy - a.dy;
});
link.append("title")
.text(function (d) {
return d.source.name + " → " +
d.target.name + "\n" + format(d.value);
});