javascript - 以时间格式制作 highcharts 的 y 轴 hh :mm

标签 javascript date datetime highcharts

我需要输入 y 轴时间格式 hh:mm,例如 y 轴应该有 16:00、32:00 等。刻度或类似的时间。
我一直在使用 highcharts - 我是 JS 和网络编程的新手。
我的数据以毫秒为单位,并将其转换为 hh:mm 格式,但是当我的毫秒数超过 86400000(24 小时) 时,它会显示下一个日期,我需要它仍以小时为单位显示:分钟格式。
有什么办法吗?我试图将 y 轴从 type: 'datetime' 更改为 type: 'time',但它对我帮助不大。 这是 jsfiddle我的图表示例和波纹管你可以找到 js 代码。

$(function () {
        $('#container').highcharts({
            chart: {
                type: 'column'
            },
            xAxis: {
                categories: [
                    'Jan',
                    'Feb',
                    'Mar',
                    'Apr',
                    'May',
                    'Jun',
                    'Jul',
                    'Aug',
                    'Sep',
                    'Oct',
                    'Nov',
                    'Dec'
                ]
            },
            yAxis: {

                title: {
                    text: 'Time (hh:mm)'
                },
                type: 'datetime',
                dateTimeLabelFormats: {
                hour: '%H:%M'
            }
            },
            plotOptions: {
                column: {
                    pointPadding: 0.2,
                    borderWidth: 0
                }
            },
            series: [{
                name: 'Tokyo',
                data: [0, 0, 0, 0, 76320000, 25920000, 102840000, 0, 0, 0, 0, 0]

            }]
        });
    });

最佳答案

如果有人需要的话,这是我得到的答案(这里是 jsfiddle 的 link)。
我以毫秒为单位设置时间变量:

data: [0, 0, 0, 0, 76320000, 25920000, 102840000, 0, 0, 0, 0, 0]

然后我根据需要格式化此值:

yAxis: {
            title: {
                text: 'Time (hh:mm)'
            },
            labels: {
                formatter: function () {
                    var time = this.value;
                    var hours1=parseInt(time/3600000);
                    var mins1=parseInt((parseInt(time%3600000))/60000);
                    return hours1 + ':' + mins1;
                }
            }
        }

这是我发现以纯 hh:mm 格式制作 y 轴的唯一方法。您也可以不以毫秒为单位制作数据,而是以您想要或需要的形式制作数据。

关于javascript - 以时间格式制作 highcharts 的 y 轴 hh :mm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19836382/

相关文章:

python - 将月份从 str 更改为 int 进行计算

c# - 如何格式化 DataGridView 中的 DateTime 列?

javascript - 锁定表格单元格宽度,而不指定它

php - 使用 PHP 如何从 mysql 检索多个日期范围并作为日期数组返回

javascript - Joomla 中 Mootools 和 jQuery 的冲突

Javascript 从 toLocaleDateString 解析已知语言环境的日期

java - Java字符串IsValid检查

python - 将 int64 转换为日期时间,格式为 %H :%M'

javascript - 在最近的浏览器中将整个窗口设置为全屏

javascript - 谷歌图像灰色框弹出外观与js