javascript - Sigma Graph CurvedArrow Edges 仅在悬停时显示
问题描述
我正在使用 Sigmajs 来可视化有向图。我试图通过设置sigInst.settings.defaultEdgeType: "curvedArrow"
甚至type
在每个边缘上设置为curvedArrow
.
有些人通过使用画布渲染器让它工作,我已经在使用一个,但显示的是节点之间的直线,并且预期curvedArrow
仅在悬停时显示。
我想也许它的默认边缘颜色设置为画布的背景颜色并且无法识别,所以我更改了背景颜色并且它没有被渲染(再次,直到悬停在上面)
你可以在这个codepen试试我的代码
这是我的代码:
const settings = {
minArrowSize: 20,
defaultEdgeType: "curvedArrow",
arrowSizeRatio: 10,
defaultEdgeLabelColor: "#FFFFFF",
defaultEdgeHoverColor: "yellow",
edgeHoverColor: 'default',
defaultEdgeColor: "red",
defaultNodeColor: "#007FFF",
defaultLabelColor: "#FFFFFF",
edgeColor:'default',
enableEdgeHovering: true,
enableHovering: false,
drawEdges: true,
}
const s = new sigma({
settings,
renderer: {
container: document.getElementById('canvas'),
type: 'canvas'
},
})
s.graph.addNode({
id: 'n0',
label: 'Hello',
x: Math.random(),
y: Math.random(),
size: 5
}).addNode({
id: 'n1',
label: 'World !',
x: Math.random() * 1.7,
y: Math.random() * 1.5,
size: 5,
}).addEdge({
id: 'e0',
label: '1',
source: 'n0',
target: 'n1',
size: 10,
type: "curvedArrow",
edgeColor:'default',
})
解决方案
我相信您的问题是因为sigma.canvas.edges.curvedArrow.js未包含在grunt 文件中。
将它添加到你的 sigma 文件夹中的 Gruntfile 中,运行npm build
,你会sigma.min.js
在 build 文件夹中得到一个
推荐阅读
- c# - 如何在 DTO 中映射相关 DTO 列表:嵌套 DTO 映射
- sql - SQL Server中如何根据组将行重新整形为列
- excel - 与多个用户共享的宏不会复制/粘贴到工作簿中
- python - AWS Lex 和 Facebook 打字动画
- android - 从 PC 到移动通信
- html - 如何使用 CSS 创建锯齿形?
- python - 如何在滚动窗口中应用 Python 中的赫斯特指数
- java - 以下哪个方法是重载的,哪个是覆盖的?
- python - DjangoRestFramework:AttributeError:'str'对象没有属性'_meta'
- google-sheets - 如何从 Google 表格的查询中删除“编辑权限”?