我需要根据用户的选择在MM/dd/yyyy HH:mm:ss
和MM/dd/yyyy
之间更改X轴勾选标签的日期时间格式。
我怎样才能使用javascript实现这一目标?
答案 0 :(得分:5)
获得解决方案,只需使用以下代码(ASP.NET)
使tickInterval动态化tickInterval : <%=IsHourly?1:24 %> * 3600 * 1000,
使用相同的逻辑来更改工具提示。
答案 1 :(得分:2)
xAxis : {
type : 'datetime',
gridLineWidth : 1,
gridLineColor : '#F2F2F2',
lineColor : '#FF0000',
tickInterval : 3600 * 1000,
dateTimeLabelFormats : {
second : '%H:%M',
minute : '%H:%M',
hour : '%H:%M',
day : '%e',
week : '%e',
month : '%e',
year : '%e'
}
},
请参阅 dateTimeLabelFormats 选项,您可以使用它来更改x轴签名标签。
如果您需要更清晰,请告诉我。!
编辑:
可以在Highcharts网站上找到更多API参考here。
编辑2:好的,如果您需要动态更改它
首先根据计算结果将所需格式保存为String
。
诸如var labelFormat = '%H:%M'
之类的内容
然后在渲染图表时将dateTimeLabelFormats
与其他必需选项放在一起。
dateTimeLabelFormats : { labelFormat }
然后调用redraw()
方法,你就完成了。
请注意:我尚未测试此代码。
答案 2 :(得分:0)
我知道我太迟了但是如果你正在寻找一个纯粹的JavaScript实现,这可能有用:
tooltip:{formatter:function(){
const selectedFormat = document.getElementById("dateFormat").value;
const finalDate = Highcharts.dateFormat(selectedFormat, this.x);
return finalDate;
}
}
我想你可以自己找到剩下的解决方案