谷歌图表API-在绘制时,给定轴上的所有系列都必须是相同的数据类型

Google Charts API - All series on a given axis must be of the same data type - when drawing

本文关键字:系列 数据类型 API- 绘制 谷歌      更新时间:2023-09-26

我试图通过Google Charts API显示一些统计数据,但由于某种原因,我遇到了这个奇怪的问题,我好几天都搞不清楚。

我得到这个错误:

给定轴上的所有系列必须具有相同的数据类型

这将是我的代码:

var data = new google.visualization.DataTable(),
    rows = [];
// Add columns
data.addColumn('datetime', 'Date');
data.addColumn('string', 'Type');
data.addColumn('number', 'Count');
for (var i = 0; i < response.length; i++) {
    for (var j in response[i]) {
        var column = response[i][j];
        rows.push([new Date(column.date), column.collection, Number(column.count)]);
    }
}
console.log(rows);
data.addRows(rows);
var options = {
  title: 'Chart display',
  hAxis: { title: 'Year',  titleTextStyle: { color: '#333' } },
  vAxis: { minValue: 0 }
};
var chart = new google.visualization.AreaChart(document.getElementById(chartId));
chart.draw(data, options);

当I console.logrows变量时,这是输出:

0: Array[3]
    0: Wed Nov 11 2015 16:07:36 GMT+0100 (CET)
    1: "views"
    2: 1
1: Array[3]
    0: Wed Nov 11 2015 16:07:36 GMT+0100 (CET)
    1: "completions"
    2: 1

这似乎完全没问题!任何一种数据类型都没有错,但我得到了那个错误。

我看不出这个问题。

您的数据结构如下:

Date      Type          Count
Nov 10    category1     10
Nov 10    category2     13
Nov 11    category1     8
Nov 11    category2     5

它的结构应该是这样的:

Date      Category1    Category2
Nov 10    10           13
Nov 11    8            5

可以更改输入源,也可以使用JavaScript对其进行重组。