我想在日期/时间工具提示上显示时区。
xDateFormat
选项没有显示时区的选项。
https://jsfiddle.net/u7z28fbp/1/
例如:
当前日期工具提示显示:Friday, April 5, 2019
我希望它显示:Friday, April 5, 2019 UTC +00:00
答案 0 :(得分:0)
尝试一下:
https://jsfiddle.net/q8s2jdgp/1/
Highcharts.chart('container', {
xAxis: {
type: 'datetime'
},
tooltip: {
xDateFormat: '%A, %B %d, %Y UTC ' + dayjs().format("Z") ,
shared: true
},
plotOptions: {
series: {
pointStart: Date.UTC(2012, 0, 1),
pointInterval: 24 * 3600 * 1000
}
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}, {
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4].reverse()
}]
});
如果要在右侧更改UTC值,则需要围绕该UTC值编写一些代码以创建变量并使用串联或插值。
我使用了day.js,这是从浏览器获取时间戳的其他方法。 get client time zone from browser
周围有一些资源可以进行日期时间格式化,我使用了以下资源:https://thoughtbot.com/blog/how-to-find-a-time-format-for-rubys-strftime
答案 1 :(得分:0)
您可以向Highcharts.dateFormats
对象添加其他日期格式说明符:
Highcharts.dateFormats = {
'Z': function(time) {
return new Date(time).getTimezoneOffset() / 60
}
}
Highcharts.stockChart('container', {
...,
tooltip: {
xDateFormat: '%A, %B %d, %Y UTC %Z'
}
});
实时演示: https://jsfiddle.net/BlackLabel/kt7bucjv/
API参考: https://api.highcharts.com/class-reference/Highcharts.html#.dateFormats