Javascript 谷歌图表API-绘制时,给定轴上的所有系列必须具有相同的数据类型
我试图通过GoogleCharts API显示一些统计数据,但由于某种原因,我遇到了一个奇怪的问题,我好几天都没弄清楚 我得到这个错误: 给定轴上的所有系列必须具有相同的数据类型 这将是我的代码:Javascript 谷歌图表API-绘制时,给定轴上的所有系列必须具有相同的数据类型,javascript,charts,google-visualization,Javascript,Charts,Google Visualization,我试图通过GoogleCharts API显示一些统计数据,但由于某种原因,我遇到了一个奇怪的问题,我好几天都没弄清楚 我得到这个错误: 给定轴上的所有系列必须具有相同的数据类型 这将是我的代码: var data = new google.visualization.DataTable(), rows = []; // Add columns data.addColumn('datetime', 'Date'); data.addColumn('string', 'Type'); d
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);
这看起来完全没问题!任何数据类型都没有问题,但我得到了这个错误
我看不出问题所在。您的数据结构如下:
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重新构造输入源。字符串和日期时间都是区域图第一列的限定符,但它们都不应该进入第二列,只能是数字。你想完成什么?我假设您希望按日期对其进行分组,然后我将继续为您拥有的每个“集合”创建列,这样您的示例将有3个列。日期、视图、完成情况。@HenrikAronsson我最初试图这样做,但我无法理解。我也会很感激你在这方面的帮助。我很困惑,因为这是我第一次使用图表。这一切都取决于你如何建立你的反应。您可以将其格式化为一些自定义数组/对象并手动填充数据,或者将其格式化为Google JSON格式。检查这里:第一个例子使用一个自定义的,一个一个填充每个单元格,另一个使用谷歌要求的JSON格式,在这里查找更多信息
Date Category1 Category2
Nov 10 10 13
Nov 11 8 5