如何在不重新传递数据的情况下重新绘制Google可视化图表?

时间:2018-06-19 19:47:57

标签: charts google-visualization

我正在尝试针对诸如窗口大小更改之类的事件调整Google Visualization Bar Chart

我似乎能够完成此操作的唯一方法是使用.draw方法并再次传递图表数据。这似乎是一个愚蠢的解决方案,因为数据没有改变,只是窗口的大小没有改变。

在没有数据参数的情况下尝试调用draw会导致错误Data table is not defined

在基本上不执行与创建时相同的步骤的情况下,是否无法更新图表?

1 个答案:

答案 0 :(得分:1)

推荐使用ChartWrapper Class ...

您可以使用包装器创建任何图表,
创建后分配数据和选项,
并且draw方法不需要任何参数...

var wrapper = new google.visualization.ChartWrapper({
  chartType: 'BarChart',
  dataTable: data,
  options: chartOptions,
  containerId: 'chart_div'
});
wrapper.draw();

只需确保在加载时包含'controls'软件包...

google.charts.load('current', {packages:['controls', 'corechart']}).then(function () {...