手动将节点添加到JavaScript InfoVis Toolkit Force Directed Graph
Manually Add Nodes to JavaScript InfoVis Toolkit Force Directed Graph
我正在尝试使用JavaScript InfoVis Toolkit:JS InfoVis ToolKit来创建力定向图。我们真的不想使用 JSON 将数据"馈送"到图形中——相反,我们宁愿手动添加节点。
我已经将以下代码放在一起 - 但是当我尝试绘制图形时,在jit的第7118行找不到我的根节点.js(var root = aGraph.getNode(id);
)。我省略了我的原力导向选项的细节 - 但这些应该不会影响结果。
fd = new $jit.ForceDirected({...})
//Create main node
var rootNode = { id: "root", name: "Actors", data: { "$color": "#557EAA"} }
fd.root = rootNode;
fd.graph.addNode(rootNode);
$.each(array, function (index, art) {
var pubId = art.pubMedId.toString();
var labelText = "Article " + pubId;
var node = { id: pubId.toString(), name: labelText, data: { "$color": "#557EAA"} }
//Create Nodes -- connect them to main node for now
fd.graph.addNode(node);
fd.graph.addAdjacence(rootNode, node, {});
text = text + art.pubMedId + ',';
});
//Display graph
fd.plot();
有人有这样做的经验吗?寻求指导。我已经在FireBug中进行了调试,并且所有内容似乎都正确加载到图形中(即 - 所有节点都存在)。我不知所措。
而不是fd.root = rootNode;
,你想使用fd.root = rootNode.id;
。我也对此感到惊讶。
此外,你可能希望在添加根节点之前初始化 Graph:
fd.graph = new $jit.Graph(fd.graphOptions, fd.config.Node, fd.config.Edge, fd.config.Label);
注意:已使用 2.0.1 版测试。
相关文章:
- Dojo Toolkit中的代码重用
- Infovis-针对graph.ready的Javascript测试
- 手动将节点添加到JavaScript InfoVis Toolkit Force Directed Graph
- 任意精度数字和Javascript,Google Web Toolkit
- 在Javascript Infovis Toolkit树映射中显示特定深度的标签
- 链接(通过url)到infovis(jit)树图中的特定节点
- Google Web Toolkit,追加错误
- Google Identity Toolkit HTTPS issue
- JavaScript Infovis 工具包:每个级别的单独级别距离
- 来自 Google Identity Toolkit 的 IDP 响应无效
- 使用 Javascript Infovis Toolkit 在空间树的节点上实现 onclick 事件
- Javascript Infovis 更改单个节点的颜色
- 什么是Javascript InfoVis Toolkit的“Hello, World”
- Javascript InfoVis Spacetree-动态隐藏/显示工具提示
- InfoVis SpaceTrees:在表单提交后更新节点信息
- 未捕获的类型错误:$(..).toolkit不是函数错误
- Javascript infovis工具包(JIT)在HyperTree中添加边缘事件侦听器
- JavaScript: RIA toolkit
- JavaScript InfoVis Toolkit处理大容量数据的能力
- 将Clusterfck数组转换为JavaScript InfoVis Toolkit json分层