我遇到类型的数据有问题:x-as中的datetime。我有一系列的日期从2016年7月1日(年/月/日)和2016年10月1日,但我无法正确显示图表。日期显示不正确,我收到错误15。
我将数据(chartInfo.DataSetTime)作为字典(string,int)获取。该字符串包含日期,如01/07/2016
这就是我得到的:
var dataset = [];
$.each(chartInfo.DataSetTime, function (key, value) {
var datum = key.split('/');
var dateke = new Date(datum[2], datum[1] - 1, datum[0]);
dataset.push([Date.UTC(dateke.getFullYear(), dateke.getMonth() ,dateke.getDay()), value]);
});
for (var i in dataset) {
dataset[i].sort(function (a, b) {
if (a.x > b.x) {
return 1;
}
if (b.x > a.x) {
return -1;
}
return 0;
});
}
console.log(dataset);
$('#container').highcharts({
chart: {
zoomType: 'x',
defaultSeriesType: 'line',
renderTo: 'container'
},
title: {
text: chartInfo.TitleChart
},
subtitle: {
text: document.ontouchstart === undefined ?
'Klik en sleep in de grafiek om in te zoomen' : 'Swipe over de grafiek om in te zoomen'
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: { // don't display the dummy year
month: '%e. %b',
year: '%b'
},
},
yAxis: {
title: {
text: chartInfo.TitleYas
}
},
legend: {
enabled: false
},
plotOptions: {
area: {
fillColor: {
linearGradient: {
x1: 0,
y1: 0,
x2: 0,
y2: 1
},
stops: [
[0, Highcharts.getOptions().colors[0]],
[1, Highcharts.Color(Highcharts.getOptions().colors[0]).setOpacity(0).get('rgba')]
]
},
marker: {
radius: 2
},
lineWidth: 1,
states: {
hover: {
lineWidth: 1
}
},
threshold: null
}
},
series: [{
type: 'area',
name: 'USD to EUR',
data: dataset.sort(function (a, b) {
return a[0] - b[0];
})
}]
});
感谢任何帮助
答案 0 :(得分:0)