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

Charts 如何在不重新传递数据的情况下重新绘制Google可视化图表?,charts,google-visualization,Charts,Google Visualization,我正试着根据诸如窗口大小的变化之类的事件来调整a 我似乎能够做到这一点的唯一方法是使用.draw方法并再次传递图表数据。这似乎是一个愚蠢的解决方案,因为数据没有改变,只是改变了窗口的大小 尝试在没有数据参数的情况下调用draw,会导致错误未定义数据表 如果不按照我在创建图表时所做的步骤进行操作,是否就无法更新图表?建议使用 您可以使用包装器创建任何图表, 创建时分配数据和选项, 而且draw方法不需要参数 var wrapper = new google.visualization.ChartW

我正试着根据诸如窗口大小的变化之类的事件来调整a

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

尝试在没有数据参数的情况下调用
draw
,会导致错误
未定义数据表

如果不按照我在创建图表时所做的步骤进行操作,是否就无法更新图表?

建议使用

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

var wrapper = new google.visualization.ChartWrapper({
  chartType: 'BarChart',
  dataTable: data,
  options: chartOptions,
  containerId: 'chart_div'
});
wrapper.draw();
只需确保在加载时包含
“控件”

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

谢谢我能够使用
setDataTable
setOption
(用于宽度和高度的更改)用包装器拼凑出一些东西,这样现在我就可以调整大小而不必考虑数据,但在需要时还可以更新基础数据。要同时完成这两项任务是非常困难的。干杯!我不确定我是否遵循大小问题,但您应该能够使图表响应容器大小,而不改变大小选项,检查…类似的方法几乎没有运气。图表呈现在“网格堆栈”项中,该项可以调整大小。到目前为止,直言不讳的做法效果很好。我将不得不仔细阅读你在这一类别中的其他一些答案。再次感谢。