d3.js sankey图-使用多角数组作为节点
d3.js sankey diagram - using multi dime array as nodes
我一直在使用Google Chart的Sankey Diagram开发一个应用程序,并在一个web应用程序上成功创建了一个Sankey Diagraph示例。但我对布局不满意,我在网上搜索了一下,发现了d3.js的Sankey Diagram插件。它看起来真的很好,我从这里测试了示例代码应用程序。
在代码中,它调用外部JSON文件将其用作节点:
d3.json("sankey-formatted.json", function(error, graph) { ... });
在我开发的第一个应用程序中,我从这样的多维数组中获取节点:
//rows is the multidimensional array
//i got this from the example on Google Charts
data.addRows(rows);
多维数组是来自AJAX调用的对象的集合。
如何将此数组用于桑基图?我可以在不调用外部文件的情况下执行此操作吗?
我设法回答了自己的问题(愚蠢的我)。我会把这个贴出来以备将来使用。
如果您已经有一个保存数据的变量(即数组),请直接使用它。
在我的情况下,原始代码:
d3.json("sankey-formatted.json", function(error, graph) {
//sankey is an object, as well as the graph
sankey
.nodes(graph.nodes)
.links(graph.links)
.layout(32);
// ... other codes
});
将其更改为
// this time, nodes and links are the variables
// that holds the arrays to be used by the chart
// remove the encapsulation of d3.json
sankey
.nodes(nodes)
.links(links)
.layout(32);
// ... other codes
希望这将有助于未来的观点。
相关文章:
- 使用javascript从节点属性获取数组值
- Protocol Buffers byte[] 数组到节点 Javascript 缓冲区
- 节点.js中的 JSON 数组
- JavaScript:在XML中搜索节点并从该节点获取数组
- 使用节点在 JSON 数组中搜索项目(最好不迭代)
- 访问节点js中对象内部的数组-未定义
- 将数组中的一个值附加到每个值'等效的html节点
- 如何在js源节点上将数组作为req.body发送
- d3.根据数组内容改变各个节点的颜色
- 节点.js异步数组迭代
- 将数组中的值插入到 XML 中的特定节点中
- 响应字段包含一个子级时的节点 SOAP 强制数组
- JavaScript 树,节点包含数组
- 警告:数组或迭代器中的每个子节点都应该有一个唯一的“键”道具
- 如何以有效的方式按给定数组对节点列表进行排序
- 设置拖放子节点以在表中显示 JSON 数组
- 我怎样才能 ajax 将对象数组发布到节点.js服务器
- 发送到节点/快速服务器的数组的访问值
- 节点.js遍数组不显示整个对象
- Sencha Touch / ExtJs仅在数组节点包含项时显示XTemplate