响应超过一个 google 个图表

Responsive more than one google charts

我在我的网站上使用 google 图表,从昨天开始我一直在寻找一种解决方案来使我的图表具有响应性,我在 Whosebug 中找到了一个:

<script>
function resize () {
    // change dimensions if necessary
    chart.draw(dataTable1, options);
    chart.draw(dataTable2, options);
    chart.draw(dataTable3, options);
}
if (window.addEventListener) {
    window.addEventListener('resize', resize);
}
else {
    window.attachEvent('onresize', resize);
}
</script>

但问题是当我使用多个图表时只有一个变得有响应,示例在这里:http://jsfiddle.net/faissal_aboullait/5f92veyy/

问题是您使用的是同一个 var 图表。

当然,再次使用它,图表变量将保留对第 3 个图表的引用。

像这样为每个图表声明一个不同的变量:

var reservationChart; 
//............
reservationChart = new google.visualization.ColumnChart(document.getElementById('chart_reservations'));
reservationChart.draw(dataTable1, options);   

然后调整大小函数将如下所示:

function resize () {
        // change dimensions if necessary
        reservationChart.draw(dataTable1, options);
        clientsChart.draw(dataTable2, options);
        deprecChart.draw(dataTable3, options);
    }

此处更新 fiddle: http://jsfiddle.net/d8vaxuug/