我有以下代码:
<script>
$.getJSON('https://www.quandl.com/api/v3/datasets/OPEC/ORB.json?order=asc', function(json) {
var hiJson = json.dataset.data.map(function(d) {
return [new Date(d[0]), d[1]]
});
// Create the chart
$('#container').highcharts('chart', {
rangeSelector: {
selected: 1
},
title: {
text: 'OPEC Crude Oil Price',
},
series: [{
type: 'line',
name: 'OPEC',
data: hiJson,
}]
});
});
按照以下方式打印漂亮的图表:
但正如您所看到的,日期格式不正确。我正在努力弄清楚出了什么问题?
所有的帮助一如既往地赞赏!
更新
感谢Holvar的评论,我解决了一个问题,但现在又有了另一个问题。
我的代码如下:
<script>
$.getJSON('https://www.quandl.com/api/v3/datasets/BOE/IUAAAMIH.json?auth_token=pg6FBmvfQazVFdUgpqHz&start_date=2003-01-02&order=asc', function(json) {
var hiJson = json.dataset.data.map(function(d) {
return [new Date(d[0]), d[1]]
});
// Create the chart
$('#interest').highcharts('chart', {
xAxis: {
type: 'datetime',
dateTimeLabelFormats: {
day: '%Y'
}
},
rangeSelector: {
selected: 1
},
title: {
text: 'UK Interest Rates',
},
series: [{
type: 'line',
name: 'Interest Rate',
data: hiJson,
}]
});
});
但这会产生一个底部没有日期的图表。我喜欢2003-01-02的几年。图表看起来像这样
我不明白为什么在最初提出的问题的解决方案中没有显示年度日期?!
非常感谢您的帮助!
答案 0 :(得分:0)
我认为问题在于数据地图的发生方式。结束数组包含多个数组,而不是带有&#34; x&#34;的对象。和&#34; y&#34;属性。尝试将hiJson
变量的初始化更改为:
var hiJson = json.dataset.data.map(function(d) { return { x: new Date(d[0]), y: d[1] }; });
这似乎与我的本地环境有关。