Как вывести массив в google charts?

В результате foreach php собираю массив для его дальнейшего вывода в графике.
Но вывод сделать не удается, получаю ошибку Data column(s) for axis #0 cannot be of type string.

Разместил пример тут: https://jsfiddle.net/xpvt214o/416806/

Подскажите в чем проблема?
  • Вопрос задан
  • 285 просмотров
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Непонятно, зачем вы из массива делаете JSON, и передаете в либу. Просто передавайте ваш массив в google.visualization.arrayToDataTable, а то, что она вернет, передавайте в draw. Еще колонка Expenses должна быть числовой а не строковой.
Работающий код
arr =[];
arr.push(['Days', 'Sales', 'Expenses']);
arr.push(["12.07.2018", 1, 15000]);
arr.push(["13.07.2018", 1, 12000]);
arr.push(["14.07.2018", 1, 18000]);
arr.push(["15.07.2018", 1, 6000]);

google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);

function drawChart() {
  var data = google.visualization.arrayToDataTable(arr);

  var options = {
    title: 'Даты и заказы',
    hAxis: {title: 'Year',  titleTextStyle: {color: '#333'}},
    vAxis: {minValue: 0}
  };

  var chart = new google.visualization.AreaChart(document.getElementById('graph_1'));
  chart.draw(data, options);
}

https://jsfiddle.net/L4npofur/
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы