【问题标题】:Google chart API: Set values of node labels in Sankey diagramGoogle chart API:在 Sankey 图中设置节点标签的值
【发布时间】:2019-12-09 14:27:43
【问题描述】:

我正在尝试创建一个简单的桑基图,显示两组节点之间的流动,并希望这两组节点具有相同的名称。但是,这是不允许的(它会出现“在行中找到循环”错误),所以我将“2”添加到第二组节点的名称中,如下所示:

        function drawChart() {
        var data = new google.visualization.DataTable();
        data.addColumn('string', 'From');
        data.addColumn('string', 'To');
        data.addColumn('number');
        data.addRows([
            ['foo', 'foo2', 6],
            ['bar', 'bar2', 4],
            ['foo', 'bar2', 6],
            ['bar', 'foo2', 4]
        ]);

        var chart = new google.visualization.Sankey(document.getElementById('sankey_basic'));
        chart.draw(data);
      }

但是,我不希望节点标签说“foo2”和“bar2”——我只希望它们说“foo”和“bar”。在某些情况下,在 Google Visualization API 中,您可以使用 {v: 'foo2', f: 'foo'} 和 {v: 'bar2', f: 'bar'} 来解决这个问题,但这在这里不起作用。有什么办法可以做到吗?

【问题讨论】:

    标签: javascript charts google-visualization data-visualization sankey-diagram


    【解决方案1】:

    尝试在末尾使用空格...

    ['foo', 'foo ', 6],
    ['bar', 'bar ', 4],
    ['foo', 'bar ', 6],
    ['bar', 'foo ', 4]
    

    请参阅以下工作 sn-p...

    google.charts.load('current', {
      packages: ['sankey']
    }).then(function () {
      var data = new google.visualization.DataTable();
      data.addColumn('string', 'From');
      data.addColumn('string', 'To');
      data.addColumn('number');
      data.addRows([
        ['foo', 'foo ', 6],
        ['bar', 'bar ', 4],
        ['foo', 'bar ', 6],
        ['bar', 'foo ', 4]
      ]);
    
      var chart = new google.visualization.Sankey(document.getElementById('sankey_basic'));
      chart.draw(data);
    });
    <script src="https://www.gstatic.com/charts/loader.js"></script>
    <div id="sankey_basic"></div>

    【讨论】:

    • 我们可以在谷歌图表的节点内添加这些标签
    猜你喜欢
    • 2017-11-25
    • 1970-01-01
    • 2022-10-17
    • 2018-07-05
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-04
    相关资源
    最近更新 更多