Datetime 海图日期时间轴

Datetime 海图日期时间轴,datetime,highcharts,timeline,Datetime,Highcharts,Timeline,我想要一个堆叠的条形图,时间显示在y轴上,如下图所示 对于所有值,y轴上的时间均为00:00。我想知道为什么它没有显示不同的时间。对于两个条形,不同截面的宽度应该不同,因为它们有不同的时间,但每个数据的宽度都是相等的。我传递的数据是UTC毫秒。两个条形图的起始位置相同,即使它们的起始值不同 我试图实现的目标是这样的: 这是我的密码: var图表选项={ 图表:{ 类型:'bar' }, 标题:{ 文本:“堆叠条形图” }, xAxis:{ 类别:[‘实际’、‘计划’] }, 亚克斯:{ 键入:

我想要一个堆叠的条形图,时间显示在y轴上,如下图所示

对于所有值,y轴上的时间均为00:00。我想知道为什么它没有显示不同的时间。对于两个条形,不同截面的宽度应该不同,因为它们有不同的时间,但每个数据的宽度都是相等的。我传递的数据是UTC毫秒。两个条形图的起始位置相同,即使它们的起始值不同

我试图实现的目标是这样的:

这是我的密码:

var图表选项={
图表:{
类型:'bar'
},
标题:{
文本:“堆叠条形图”
},
xAxis:{
类别:[‘实际’、‘计划’]
},
亚克斯:{
键入:“日期时间”,
日期时间标签格式:{
日期:'%H:%M'
},
标签:{格式化程序:函数(){
console.log(this.value);
返回Highcharts.dateFormat(“%H:%M”,此.value);
}},
相反:是的,
绘图线:[{
颜色:“#FF0000”,
宽度:2,
价值:1428042300000,
标签:{text:'current time'}
}]
},
工具提示:{
格式化程序:函数(){
返回Highcharts.dateFormat('%H:%M:%S',this.y)+':'+this.series.name;
}
},
图例:{
对
},
打印选项:{
系列:{
堆叠:“正常”,
数据标签:{enabled:true,formatter:function(){if(this.y){返回this.series.name}}
}
},
系列:[{“名称”:“起飞”,“数据”:[null,1428042300000]},{“名称”:“断块”,“数据”:[null,1428042300000]},{“名称”:“在块中”,“数据”:[null,1428038700000]},{“名称”:“着陆”,“数据”:[14280381600001428038700000]}]
}

这些条显示相同的宽度,因为它们表示您输入的日期的相对值,即自历元起的毫秒总数。您需要计算出每个阶段的时间跨度,并绘制这些时间跨度

差不多

另外,显然,如果没有一些代码,我无法发布JSFIDLE链接:

series: [{"name": "Take-Off","data": 3600000}] // etc.

您好,谢谢您的回复,结果图似乎正是我需要的,但我仍然不明白我的数据有什么问题,在您的数据中,您似乎将日期保留为1970年1月1日,您只是在更改时间。为什么需要在标签格式化程序中添加特定毫秒。即使着陆时间是00:13,在图中,它接近于06:25,条形图表示给定数字的长度,但在开始时间和1970年之间经过的整个时间内,它们之间的比例相差不大,因此条形图的长度相似。您需要传入每个条表示的时间长度,而不是每个开始时间。