Google图表API:设置桑基图中节点标签的值
Google chart API: Set values of node labels in Sankey diagram
我正在尝试创建一个简单的桑基图来显示两组节点之间的流动,并希望这两组节点具有相同的名称。但是,这是不允许的(它会引发 "Cycle found in rows" 错误),因此我将“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 可视化 API 中的某些情况下,您可以使用 {v: 'foo2', f: 'foo'} 和 {v: 'bar2', f: 'bar'},但这在这里不起作用。有什么办法可以做到这一点吗?
尝试在最后使用 space...
['foo', 'foo ', 6],
['bar', 'bar ', 4],
['foo', 'bar ', 6],
['bar', 'foo ', 4]
请参阅以下工作片段...
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>
我正在尝试创建一个简单的桑基图来显示两组节点之间的流动,并希望这两组节点具有相同的名称。但是,这是不允许的(它会引发 "Cycle found in rows" 错误),因此我将“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 可视化 API 中的某些情况下,您可以使用 {v: 'foo2', f: 'foo'} 和 {v: 'bar2', f: 'bar'},但这在这里不起作用。有什么办法可以做到这一点吗?
尝试在最后使用 space...
['foo', 'foo ', 6],
['bar', 'bar ', 4],
['foo', 'bar ', 6],
['bar', 'foo ', 4]
请参阅以下工作片段...
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>