highcharts Highchart sankey -使节点的权重高于总输出

n3h0vuf2  于 2022-11-10  发布在  Highcharts
关注(0)|答案(1)|浏览(156)

我正在尝试使用highcharts来渲染sankey chart like this
在这里,第一个节点比它的输出链接有更高的“值”。有什么方法可以实现这一点吗?我已经检查了highchart's sankey APIs,但没有找到任何允许我将节点的高度设置为大于它的输出链接的方法。
I've created this JsFiddle as a starting point。您可以看到,“Step 1”和“Step 2”节点的高度为1:1,但我希望第一个节点的高度大于75,并且只有到“Step 2”的传出链接的值为50
如何实现这一点有什么建议吗?

x6h2sr28

x6h2sr281#

events.load中,像Sankey这样的系列可以隐藏节点和链接,并使用更新选项更新和更改图形属性。

chart: {
    events: {
      load: function() {
        let chart = this,
          series = chart.series[0],
          nodes = series.nodeLookup,
          columns = series.nodeColumns;

        for (let i in nodes) {
          if (nodes[i].id === "step0") {
            nodes[i].update({
              color: 'transparent'
            });
            nodes[i].graphic.hide();
            nodes[i].dataLabel.hide();
            nodes[i].visible = false;
            nodes[i].linksFrom[0].graphic.hide();
          }
        }
      }
    }
  },

现场演示:https://jsfiddle.net/BlackLabel/342pvzfj/1/
----编辑
要调整图表边缘和图表绘图区,请尝试chart.marginLeft让位于将图表向左移动。

marginLeft: -100,

相关问题