gpt4 book ai didi

javascript - Sankey 的 Google 图表 API 未触发选择事件

转载 作者:行者123 更新时间:2023-11-29 16:10:20 25 4
gpt4 key购买 nike

我正在尝试将一个事件关联到对 Google Sankey 图的点击。 Events声称包括 select 但它不会在 Chrome 或 Safari 上触发。如果在下面的代码中切换了事件,onmouseover/onmouseout/ready 似乎被连接起来了——我在控制台日志中得到了一些东西。即切换线路:

google.visualization.events.addListener(chart, 'select', selectHandler);

google.visualization.events.addListener(chart, 'onmouseover', selectHandler);

显示事件监听器已连接。

我已经在其他较新的图表类型(例如单词树)上尝试过此操作,并且已连接选择。我错过了什么?

例如

<html>
<head>
<script type='text/javascript' src='https://www.google.com/jsapi'</script>
<script type='text/javascript'>

google.load('visualization', '1.1', {packages:['sankey']});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'A');
data.addColumn('string', 'B');
data.addColumn('number', 'Mails');
data.addRows([
['from elvis','frank', 285],
['frank', 'to wendy', 61],
]);
var options = {width: 600};
var chart = new google.visualization.Sankey(document.getElementById('thechart'));

google.visualization.events.addListener(chart, 'select', selectHandler);

function selectHandler() {
console.log('You selected ' + JSON.stringify(chart.getSelection()));
};

chart.draw(data, options);
}
</script>
</head>
<body>
<div id='thechart' style='width: 600px; height: 300px;'></div>
</body>
</html>

最佳答案

您必须设置正确的选项:

 // Sets chart options.
var options = {
width: 600,
sankey: {
node: {
interactivity: true
}
}
};

我用了这个例子https://jsfiddle.net/5mvx6bdr/工作完美:)

sankey: node: interactivity 默认设置为 false。

关于javascript - Sankey 的 Google 图表 API 未触发选择事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30337430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com