![](/img/trans.png)
[英]Google chart: “Uncaught (in promise) Error: Unknown header type: 4.7278” error
[英]Google guage chart give Unknown Header Type : 24
根據我的知識,這是我的代碼。 因為我成功創建了類似的PIE圖表,
錯誤是: Unknown Header Type : 24
我認為錯誤是從csv文件解析數據。 但它以string
和int
形式正確解析。
有人可以告訴我們這里有什么問題。
<html>
<head>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script>
<script src="http://jquery-csv.googlecode.com/files/jquery.csv-0.71.js"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["gauge"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
// grab the CSV
$.get("Chart2-data.csv", function(csvString) {
// transform the CSV string into a 2-dimensional array
var arrayData = $.csv.toArrays(csvString, {onParseValue: $.csv.hooks.castToScalar});
//alert(arrayData);
// this new DataTable object holds all the data
var data = new google.visualization.arrayToDataTable(arrayData);
// this view can select a subset of the data at a time
var view = new google.visualization.DataView(data);
view.setColumns([0,1]);
// set chart options
var options = {
title: "A Chart from a CSV!",
hAxis: {title: data.getColumnLabel(0), minValue: data.getColumnRange(0).min, maxValue: data.getColumnRange(0).max},
vAxis: {title: data.getColumnLabel(1), minValue: data.getColumnRange(1).min, maxValue: data.getColumnRange(1).max},
legend: 'none'
};
var chart = new google.visualization.Gauge(document.getElementById('gauge'));
chart.draw(data, options);
});
}
</script>
</head>
<body>
<div id="gauge" style="width: 900px; height: 500px;"></div>
</body>
</html
>
csv數據:
Engine,24
min,34
max,0
yellowFrom,10
yellowTo,6
redFrom,6
redTo,0
我遇到了同樣的問題。
在我的數據庫結果上使用Firebug我能夠確定問題是谷歌庫將數值威脅為數組頭。
我的陣列如下
[['234 234 - ',234.00],['234 234 - ',234.00],['cuarta zzzzzzzzz prueba htmlzzzzzzz - ',654999.00],['fulanita de tal - ',150.00],['fulanita de tal - ',133.00],['Mario Alvarez Alvarez - tony',125143.20],['otra5555 prueba5555 - ',1866.00],['prieba de insert actualizando - ',1101.00],['prueba 888 - ',987.00],['prueba con html - ',854.00],['prueba de guardado - ',123.00],['prueba de insert - ',369.00],['prueba insert actualizando 02 - ',753.00],['prueba666 7777 - ',1547.00],['prueba666 7777 - ',1547.00],['prueba88888 de guardado8888 - ',1576.00],['tercera prueba - ',98765.00]]
我的javascript錯誤是:
Error: Unknown header type: 234
Google Visualization API參考中解釋了該解決方案:
google.visualization.arrayToDataTable(twoDArray,opt_firstRowIsData) 檢查此鏈接以獲取詳細信息
您必須明確告訴庫第一行是數據,而不是標題。 我像這樣添加第二個參數true:
var data = google.visualization.arrayToDataTable(vArray, true);
PD:我的網絡應用程序工作正常,直到幾天前。 我猜谷歌對圖書館做了一些改動。
希望我的解釋能幫到你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.