Отредактировано для согласованности.
мы можем использовать DataView
с вычисляемым столбцом,
для преобразования значений сетевых имен.
Сначала создайте объект для сопоставления значений с именами.
var socialNetworks = {
a: 'Facebook',
b: 'Instagram',
c: 'LinkedIn'
};
затем мы создаем DataView
из DataTable
.
var view = new google.visualization.DataView(data);
затем используйте метод setColumns
, чтобы добавить вычисляемый столбец для преобразования.
мы используем индекс столбца числа, поскольку он не будет изменяться.
view.setColumns([{
calc: function (dt, row) {
return socialNetworks[data.getValue(row, 0)];
},
label: 'social',
type: 'string'
}, 1]);
, затем используйте DataView
, чтобы нарисовать график.
chart.draw(view, options);
полный фрагмент ...
var data = google.visualization.arrayToDataTable([
['social', 'number'],
<?php
while($row = mysqli_fetch_array($result))
{
echo "['".$row["a1"]."', ".$row["number"]."],";
}
?>
]);
var options = {
title: 'Which social networks do you use most often?',
//is3D:true,
pieHole: 0.4,
};
var socialNetworks = {
a: 'Facebook',
b: 'Instagram',
c: 'LinkedIn'
};
var view = new google.visualization.DataView(data);
view.setColumns([{
calc: function (dt, row) {
return socialNetworks[data.getValue(row, 0)];
},
label: 'social',
type: 'string'
}, 1]);
var chart = new google.visualization.PieChart(document.getElementById('piechart'));
chart.draw(view, options);