Look at this jsfiddle,即使日期格式为day: '%e of %Y'
,它仍以ISO格式显示。
这是javascript:
var xAxis = {
type: 'datetime',
dateTimeLabelFormats: {
day: '%e of %Y'
}
};
xAxis.categories = [];
for (var i=1;i<=10;i++){
var d = new Date(2015,3,i);
xAxis.categories[i] = d;
}
$('#container').highcharts({
xAxis: xAxis,
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1]
}]
});
答案 0 :(得分:0)
正如Ondkloss在评论中所说,您应该使用 datetime
或 categories
。在您的情况下,日期时间将是更好的选择。你可以使用这样的东西:
var dataPlusDates = [];
var data = [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1];
for (var i = 1 ; i <= 10 ; i++) {
var d = Date.UTC(2015,3,i);
dataPlusDates.push([d, data[i]]);
}
$('#container').highcharts({
xAxis: xAxis,
series: [{
data: dataPlusDates
}]
});
Ondkloss说,系列数据的格式应为[时间,以毫秒为单位,值]。可以使用 time in milliseconds
计算 Date.UTC(year, month, day)
。所以我改变了你的for循环并为你创建了这个格式并将其放在 series.data 中。这是DEMO。