我想在Highchart的图表的y-axis上显示时间值的数据。这些时间值可以从10秒到10天不等
目前我可以像这样设置y轴类型:
yAxis: {
type: 'logarithmic'
}
得到一些看起来像这样的东西:
使用对数时间刻度的最佳方法是什么,但不是只显示分钟,显示秒,分,小时和天?
类似:10秒30秒1分2分钟5分钟10分钟30分钟1小时2小时4小时8小时1天2天5天10天。我知道这并不是一个对数的进展,但你希望我能抓住我的漂移。
答案 0 :(得分:1)
请参阅本主题的第一篇文章(官方Highcharts论坛):https://forum.highcharts.com/highstock-usage/chart-customisation-t39677/?hilit=logarithmic#p137385
我解释了如何处理连接对数轴和日期时间输入。
我简化了原始的演示并根据您的需要进行了调整:http://jsfiddle.net/kkulig/5Ldowjbr/
在这种情况下,x轴是对数(而不是y):
yAxis: [{
type: 'logarithmic',
showFirstLabel: false,
labels: {
formatter: function() {
return Highcharts.dateFormat("%Hh %Mm %Ss", this.value + baseline - timeOffset);
}
}
}],
我还将日期的显示格式更改为%Hh %Mm %Ss
,并将点的timestamp
个素位重命名为miliseconds
。
答案 1 :(得分:0)
Moment.js救援:
yAxis: {
type: 'logarithmic',
labels: {
formatter: function () {
return moment.duration(this.value, 'minutes').humanize()
}
}
}