jsnetworkx - 如何将边缘标签添加到 Jsnetworkx 中的图形中
问题描述
我正在从事图形可视化项目并正在使用 JSnetworkx。到目前为止,我已经能够更改边缘宽度和颜色,但我运气不佳,试图让它显示边缘标签。请帮忙。
var G = new jsnx.DiGraph();
G.addNodesFrom([1,2,3,4,5,[9,{color: '#008A00'}]], {color: '#0064C7'});
G.addCycle([1,2,3,4,5]);
G.addEdgesFrom([[1,9], [9,1]],{label:"edge_1"});
jsnx.draw(G, {
element: '#canvas',
withLabels: true,
nodeStyle: {
fill: function(d) {
return d.data.color;
}
},
edge_style:{
'stroke-width':5,
fill: "black"
},
labelStyle: {fill: 'pink'},
stickyDrag: true
});
解决方案
下面是一个对我有用的原型。
var G = new jsnx.Graph();
G.addNodesFrom([
['a', { color: 'red' }],
['b', { color: 'green' }],
['c', { color: 'white' }]
]);
G.addEdgesFrom([
['a', 'b', { label: 'a to b label' }],
['a', 'c', { label: 'a to c label' }]
]);
jsnx.draw(G, {
element: '#canvas',
layoutAttr: {
friction : 0,
gravity : 0,
linkDistance: 400
},
withLabels: true,
withEdgeLabels: true,
nodeStyle: {
fill: function (d) {
return d.data.color;
}
},
edgeLabels: function (d) {
return d.data.label;
}
});
推荐阅读
- php - php准备好的语句和正确使用
- javascript - 如何在 Chart.js 或 Angular 2 中的任何其他 JavaScript 库中绘制圆形进度条
- java - EditText 在 Moto 360 上无法正常工作
- javascript - 在我的代码中,我正在尝试创建房间,但我不知道为什么每次它都会用新房间创建旧房间
- javascript - Sails-mongo 的 Sails.js“无法拆除 ORM 钩子”错误
- python - 通过 SSH 配置多台机器的集中式 python 脚本
- android - Android 是否会在更新时清理应用缓存?
- java - Spring initializr 生成的 Spring Boot 应用程序在 eclipse 上运行时出错
- dart - Flutter 导入包/插件
- git - 从文件的先前版本传输部分?