Datetime 在Highchart的x轴中设置日期时间格式
我正在尝试在highchart中实现日期时间序列图。我已经提供了UNIX时间戳,它以这样的方式绘制了8小时的数据: 如你所见,我不知道这张图表的日期。我想在第一点(“%e.%b”)中显示日期。现在,当日期发生变化时,它会自动显示24小时的日期,如下所示: 这是我现在的实现:Datetime 在Highchart的x轴中设置日期时间格式,datetime,highcharts,Datetime,Highcharts,我正在尝试在highchart中实现日期时间序列图。我已经提供了UNIX时间戳,它以这样的方式绘制了8小时的数据: 如你所见,我不知道这张图表的日期。我想在第一点(“%e.%b”)中显示日期。现在,当日期发生变化时,它会自动显示24小时的日期,如下所示: 这是我现在的实现: xAxis: { type: 'datetime', crosshair: true, gridLineWidth: 0 } 我尝试使用如下格式设
xAxis: {
type: 'datetime',
crosshair: true,
gridLineWidth: 0
}
我尝试使用如下格式设置程序,但除了第一点外,它根本不显示日期:
xAxis: {
type: 'datetime',
labels: {
formatter: function () {
if (this.isFirst) {
return Highcharts.dateFormat('%e. %b', this.value);
}
return Highcharts.dateFormat('%H:%M', this.value);
}
},
crosshair: true,
gridLineWidth: 0
}
我正在尝试编写一个格式化程序函数,它在第一点和午夜显示日期和所有其他时间,它以HH:mm显示时间?您可以使用getHours()
检查轴标签数据值的小时数,并相应地格式化:
labels: {
formatter: function() {
if (this.isFirst) {
return Highcharts.dateFormat('%e. %b', this.value);
}
else {
var t = new Date(this.value);
var h = t.getHours();
return h == 0
? Highcharts.dateFormat('%e. %b', this.value)
: Highcharts.dateFormat('%H:%M', this.value);
}
}
}
小提琴:
getHours()
检查轴标签数据值的小时数,并相应设置格式:
labels: {
formatter: function() {
if (this.isFirst) {
return Highcharts.dateFormat('%e. %b', this.value);
}
else {
var t = new Date(this.value);
var h = t.getHours();
return h == 0
? Highcharts.dateFormat('%e. %b', this.value)
: Highcharts.dateFormat('%H:%M', this.value);
}
}
}
小提琴:
返回Highcharts.dateFormat(“%H:%M”,this.value)代码>我不清楚实际的问题是什么。@jlbiggs很抱歉不清楚。我想将显示数据的值显示为%e.%b大约午夜。与默认格式设置程序得到的值类似。“它以HH:mm显示时间”这正是您告诉它显示的:return Highcharts.dateFormat(“%H:%M”,this.value)代码>我不清楚实际的问题是什么。@jlbiggs很抱歉不清楚。我想将显示数据的值显示为%e.%b大约午夜。与使用默认格式化程序获得的值类似。