вы можете инициализировать кнопки в обратном вызове загрузки,
и передавать тип диаграммы в функции рисования ...
примечание: я добавил жестко закодированные данные для примера,
Вы можете добавить обратно свои данные PHP.
см. Следующий рабочий фрагмент ...
google.charts.load('current', {
packages: ['corechart']
}).then(function() {
var barsButton = document.getElementById('b1');
var pieButton = document.getElementById('b2');
barsButton.onclick = function() {
drawSarahChart('ColumnChart');
drawAnthonyChart('ColumnChart');
}
pieButton.onclick = function() {
drawSarahChart('PieChart');
drawAnthonyChart('PieChart');
}
drawSarahChart('ColumnChart');
drawAnthonyChart('ColumnChart');
});
function drawSarahChart(chartType) {
var chart = new google.visualization.ChartWrapper({
containerId: 'Sarah_chart_div'
});
var data = google.visualization.arrayToDataTable([
['Year', 'location'],
['A', 100],
['B', 120]
]);
var options = {
title: 'FY 2018',
width: 400,
height: 300
};
chart.setOptions(options);
chart.setChartType(chartType);
chart.setDataTable(data);
chart.draw();
}
function drawAnthonyChart(chartType) {
var chart = new google.visualization.ChartWrapper({
containerId: 'Anthony_chart_div'
});
var data = google.visualization.arrayToDataTable([
['Year', 'location'],
['A', 100],
['B', 120]
]);
var options = {
title: 'FY 2019',
width: 400,
height: 300
};
var barsButton = document.getElementById('b1');
var pieButton = document.getElementById('b2');
chart.setOptions(options);
chart.setChartType(chartType);
chart.setDataTable(data);
chart.draw();
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<input type='button' id='b1' value='Draw Bar Chart' />
<input type='button' id='b2' value='Draw Pie Chart' />
<table>
<tr>
<td>
<div id="Sarah_chart_div" style="border: 1px solid #ccc"></div>
</td>
<td>
<div id="Anthony_chart_div" style="border: 1px solid #ccc"></div>
</td>
</tr>
</table>