谷歌图表:“未捕获(承诺)错误:未知标题类型:4.7278”错误
我试图通过谷歌图表显示货币汇率的折线图。
基本上我有两种类型的值:
- 日期(格式iso8601)
- 费率(十进制数)
当我试图渲染图表时,我收到一个错误:“未捕获(在承诺中)错误:未知标题类型:4.7278”
这是我的代码:
PHP数组制作:
$xml=simplexml_load_file('https://www.ecb.europa.eu/stats/policy_and_exchange_rates/euro_reference_exchange_rates/html/usd.xml') or die("Error: Cannot create object"); $arrayForChart[] = ["Date","Rate"]; foreach ($xml->DataSet->Series->Obs as $key => $value) { $dateIso8601Format=(string)$value['TIME_PERIOD']; $rateForDate=(string)$value['OBS_VALUE'][0]; $rateForDate=(float)$rateForDate; $arrayForChart[] = [$dateIso8601Format,$rateForDate]; } $arrayForChart = json_encode($arrayForChart);
使用Javascript
var arrayForChart; $.ajax({ type: "POST", url: ajaxUrl, //data: {configuration: Config }, success: function (data) { arrayForChart = data; arrayForChart = $.map(arrayForChart, function (el) { return el; });//converting js object to js array }, cache: false }); google.charts.load("current", {packages: ["corechart", "line"]}); google.charts.setOnLoadCallback(drawLineColors); function drawLineColors() { var data = google.visualization.arrayToDataTable([arrayForChart]); var options = { hAxis: { title: "Rate", id: "Rate", label: "Rate", type: "number" }, vAxis: { title: "Date", id: "Date", label: "Date", type: "string" }, colors: ["#a52714", "#097138"] }; var chart = new google.visualization.LineChart(document.getElementById("chart_div")); chart.draw(data, options); }
数据样本:
["Date","Rate","2011-01-03",4.7278,"2011-01-04",4.7301,"2011-01-05",4.6814,"2011-01-06",4.6635]
任何人都可能知道这是什么问题?
非常感谢!
谷歌图表需要一系列数组。 你似乎在为它提供一个平面。 例如
Array('date', 'value', 1,2,3,4);
应该
Array( Array(date, value), Array(1, 2), Array(3, 4) );