React vis - 在 x 轴上格式化时间刻度
React vis - Formatting time tick on the x axis
我已将 xType="time"
添加到图表中以在 x 轴上显示时间刻度。我只显示 25 秒范围内的数据。当前,x 轴显示时间格式为 :SS
.
因此 x 轴以以下格式显示时间(数据显示每秒):
:23, :24, :25
我从数据库中得到的是以下格式的时间字符串:
2019-07-01T10:42:38.621Z
我试过以下方法:
new Date(item.date) // shows ':023'
new Date(item.date).getTime() // shows ':023'
new Date(item.date.substring(19, 0)).getTime() // shows ':023'
oscilloscope.oscilloscope.map((item, index) => {
return {
x: new Date(item.date.substring(19, 0)).getTime(),
y: item.data.fuelInjection
}
})
总是得到相同的结果。
我希望将 x 轴格式化为 HH:MM:SS
格式。
所以 x 轴显示的数据如下:
11:42:05, 11:42:06, 11:42:07
我显示的是相隔 25 秒的范围。这似乎是由图表自动设置的,就好像我将范围更改为包含几分钟的范围,x 轴上的时间显示更改为 MM:SS
格式。我仍然需要 HH:MM:SS
格式。这完全可以做到吗?
为了在一周后回答我自己的问题,我在 Stack Overflow 上找到了关于 react-vis 的不同问题的答案:
show date in( MM-DD) format in x-axis using react-vis
就我而言,解决方案是:
<XAxis
tickFormat={function tickFormat(d){
const date = new Date(d)
return date.toISOString().substr(11, 8)
}}
/>
完成了这项工作。希望它能节省别人的时间。
我已将 xType="time"
添加到图表中以在 x 轴上显示时间刻度。我只显示 25 秒范围内的数据。当前,x 轴显示时间格式为 :SS
.
因此 x 轴以以下格式显示时间(数据显示每秒):
:23, :24, :25
我从数据库中得到的是以下格式的时间字符串:
2019-07-01T10:42:38.621Z
我试过以下方法:
new Date(item.date) // shows ':023'
new Date(item.date).getTime() // shows ':023'
new Date(item.date.substring(19, 0)).getTime() // shows ':023'
oscilloscope.oscilloscope.map((item, index) => {
return {
x: new Date(item.date.substring(19, 0)).getTime(),
y: item.data.fuelInjection
}
})
总是得到相同的结果。
我希望将 x 轴格式化为 HH:MM:SS
格式。
所以 x 轴显示的数据如下:
11:42:05, 11:42:06, 11:42:07
我显示的是相隔 25 秒的范围。这似乎是由图表自动设置的,就好像我将范围更改为包含几分钟的范围,x 轴上的时间显示更改为 MM:SS
格式。我仍然需要 HH:MM:SS
格式。这完全可以做到吗?
为了在一周后回答我自己的问题,我在 Stack Overflow 上找到了关于 react-vis 的不同问题的答案: show date in( MM-DD) format in x-axis using react-vis
就我而言,解决方案是:
<XAxis
tickFormat={function tickFormat(d){
const date = new Date(d)
return date.toISOString().substr(11, 8)
}}
/>
完成了这项工作。希望它能节省别人的时间。