我有一个饼图,使用下面的代码可以在单击按钮时进行动态更新。
在按钮上单击
$("#myChart").highcharts().series[0].setData($.extend(true, [], data1))
我正在使用键填充数据表。
keys: ['Count','Value'],
这可以正常工作并更新图表,但我还在导出菜单中启用了导出数据表,但是该数据表没有更新。在所有连续的按钮单击中保持不变。
如何通过单击按钮更新数据表以显示新数据的数据。
这是一个小提琴,但是它实际上并没有使用按钮,而只是让您了解我的图表:https://jsfiddle.net/mewohraz/1/
更新:以下解决方案有效,但是我不得不注释掉我用来切换viewData表的这段代码。如果您再次单击viewData,它可以关闭表格。如何通过chart.viewData()使用它?
Highcharts.Chart.prototype.viewData = function () {
if (!this.insertedTable) {
var div = document.createElement('div');
div.className = 'highcharts-data-table';
// Insert after the chart container
this.renderTo.parentNode.insertBefore(div, this.renderTo.nextSibling);
div.innerHTML = this.getTable();
this.insertedTable = true;
div.id = this.container.id + '-data-table';
}
else {
$('#' + this.container.id + '-data-table').toggle();
}
};
答案 0 :(得分:1)
您需要调用viewData
内部方法来刷新数据表:
$('#update').on('click', function() {
var data1 = [...];
chart.series[0].setData(data1);
chart.viewData();
});