我有以下代码并发现不兼容的数据表:错误:表包含的列数超出预期(期望3列)
function drawMarkersMap() {
var data = google.visualization.arrayToDataTable([
['State', 'User', 'Company','data'],
['Australian Capital Territory', 100, 160, 100],
['Northern Territory', 250, 250, 200 ],
['Western Australia', 150, 350, 300],
['New South Wales', 300, 100, 400],
['Victoria', 50, 156, 50],
['Queensland', 10, 150, 20],
['South Australia', 160, 168, 23],
['Tasmania', 250, 568, 3443]
]);
var options = {
region : 'AU',
displayMode : 'markers',
colorAxis : {
colors: ['blue', 'red']
}
};
var chart = new google.visualization.GeoChart(document.getElementById('chart_div_geo'));
chart.draw(data, options);
};
答案 0 :(得分:6)
Geocharts不支持拥有3个不同的数据列。
对于区域图表,数据应仅包括:
对于标记图表,数据应仅包括:
目前,您的示例是带有第三个数据类别的标记图表,不支持(User
将确定颜色,Company
将确定尺寸)。
答案 1 :(得分:3)
这是你的解决方案:
var view = new google.visualization.DataView(data);
view.setColumns([0, {
type: 'number',
label: 'Total Staff',
calc: function (dt, row) {
return {
v: dt.getValue(row, 1),
f: dt.getFormattedValue(row, 1) + ' (' + dt.getFormattedValue(row, 2) + ' IT, ' + dt.getFormattedValue(row, 3) + ' HR, ' + dt.getFormattedValue(row, 4) + ' Sales)'
}
}
}]);
chart.draw(view, {...