当前位置: 首页 > 知识库问答 >
问题:

显示/隐藏高图网络图中的子节点和链接

祁晟
2023-03-14

我用高图构建了一个网络图,我正在努力找到一种方法来轻松地“扩展”或“显示”节点的子节点。我遇到的问题是,数据的声明方式是非常线性的。它实际上没有太多的层次结构。

这是我到目前为止的一支笔https://codepen.io/anon/pen/xvGMwa.我的问题是“链接”与节点没有关联。所以我很难找到一组节点及其链接并隐藏/显示它们。

我希望它只从前4个节点开始,然后能够单击节点上的一个动作来显示/隐藏其子节点。我最好用CSS来实现这一点。

我找到的最接近的例子是这个例子,但它不是我真正想要的:

point: {
            events: {
                click: function() {
                    this.remove();
                }
            }
        }

奇怪的是,这里的高图示例https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/series-networkgraph/data-options/在链接上有id。但我的示例没有。我不知道为什么会这样?我想如果我的链接上有id,那么找到它们并隐藏/显示它们会更容易。

共有1个答案

薛征
2023-03-14

通过点击节点,你可以在点中找到它的链接。链接到和点。来自阵列的链接。

要显示和隐藏它们,只需使用高图。SVGElement.hide()高图。SVGElement.show()方法。检查下面发布的演示和代码。

代码:

series: [{
  ...
  point: {
    events: {
      click: function() {
        var point = this;

        if (!point.linksHidden) {
          point.linksHidden = true;

          point.linksTo.forEach(function(link) {
            link.graphic.hide();

            link.fromNode.graphic.hide();
            link.fromNode.dataLabel.hide();
          })
        } else {
          point.linksHidden = false;

          point.linksTo.forEach(function(link) {
            link.graphic.show();

            link.fromNode.graphic.show();
            link.fromNode.dataLabel.show();
          })
        }
      }
    }
  }
  ...
}]

演示:

  • https://jsfiddle.net/BlackLabel/9drzxj2L/

API参考:

>

  • https://api.highcharts.com/class-reference/Highcharts.SVGElement#hide

    https://api.highcharts.com/class-reference/Highcharts.SVGElement#show

  •  类似资料:
    • 我开始尝试boost graph类。为此,我创建了一个简单的示例,如下所示。当通过深度优先搜索算法遍历图形时,我没有添加一个节点。代码如下: 这个的输出是 但是0从何而来,我从未添加过它?这是某种虚拟节点吗?但如果是这样,为什么在遍历时访问它,如何实现所需的行为? 编辑1:经过尝试,PlasmaHH建议,并通过我发现的提升代码进行调试,提升::add_edge调用图的顶点结构的调整大小。因此,搜索

    • 问题内容: 我在CSS上遇到了一些麻烦,似乎找不到解决方案。我有这个HTML 现在,我只想隐藏文本“单击关闭”,而不隐藏div或其中的链接。 能做到吗? 问题答案: 可以在子元素上覆盖该属性,因此您可以执行以下操作: CSS:

    • 最初,我将每个点的填充颜色设置为完全透明。如果我把鼠标放在图形上,点就会弹出。我想隐藏所有的点,这样线图是平滑的。

    • 我现在尝试的是,如果我有一个图表,然后,当我点击一个按钮与“onchange”功能,它将显示几个图表。但当我点击后退,我有我想要的图表,但仍然有“图例”的第二个图表在第一个图表的顶部。 有没有办法去除它?我找到了,但它删除了所有图表的图例。 这是我的代码 null null 亲切地

    • 我正在从命令行用python运行mplfinance。我想隐藏(或不显示)绘图,因为我将绘图另存为一个。jpg。稍后,我将在图像查看器中查看绘图/图形/图像。 问题是,我必须关闭为脚本绘制的每个图像,以便继续定义下一个图。我不想在执行时看到图形,并且必须在脚本循环创建多个图形时关闭每个图像。换句话说就是“火了就忘”。 有没有办法隐藏(或不显示)mplFinance中的情节 谢谢你的帮助。 谢谢,

    • 我有一个如下所示的JTree结构。我有图标,每当节点有子节点时就会出现,这是正常工作的。 我的问题是我需要隐藏根节点。当我隐藏根节点时,不会显示MainTop1和MainTop2节点的图标,尽管它们有子节点。为了隐藏根节点,我使用“setrootvisible(false)”。 此外,当根节点隐藏时,Topic1和Topic节点的图标将正确显示。 有人知道如何在隐藏ROOT时显示MainTop1和