如何在visjs图中隐藏边缘的标签?

问题描述 投票:1回答:3

我想只在选择边缘时显示标签,是否有库方法来执行此操作?

最终我想到有一个包括标签的边缘属性商店,这是个好主意吗?

javascript canvas vis.js
3个回答
2
投票

没有这样的方法。

你可以做的是听selectEdge事件,当选择边缘时,删除它的标签。取消选择边缘后,再次添加标签。


0
投票

如果设置了边缘的label字段,则显示标签。没有办法将其配置为表现不同。要隐藏标签,只需将值移动到隐藏字段,例如_labellabel_hidden。然后,当你准备好显示标签时,请执行edge.label = edge._label

一个抬头:如果你delete edge.label并通过DataSet.update更新它,那么它将不会被删除。你必须将它设置为""null


0
投票

我发现这种解决方法是实现它的最简单方法:

var options = {
    edges: {
        font: {
            size: 0
        },
        chosen: {
            label: function (values, id, selected, hovering) {
                values.size = 14;
            }
        }
    }
}

var network = new vis.Network(container, data, options);

说明:

所有边的字体大小都设置为0.所选边的字体大小设置为所需的值。

边注:

出于某种原因,这种方法不起作用。

见:https://github.com/almende/vis/issues/4112

© www.soinside.com 2019 - 2024. All rights reserved.