React vis - форматирование времени по оси x - PullRequest
0 голосов
/ 08 июля 2019

Я добавил 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

IЯ показываю диапазон 25 секунд друг от друга.Кажется, это автоматически устанавливается графиком, как будто я изменяю диапазон до такой степени, что включается пара минут, когда отображение времени по оси X меняется на формат MM:SS.Мне все еще нужен формат HH:MM:SS.Можно ли вообще это сделать?

1 Ответ

0 голосов
/ 15 июля 2019

Чтобы ответить на мой собственный вопрос неделю спустя, я нашел ответ в другом вопросе о реакциях здесь, в Переполнении стека: показать дату в формате (MM-DD) по оси x с использованием реагирования-виз * 1002.*

В моем случае решение было:

<XAxis 
  tickFormat={function tickFormat(d){
    const date = new Date(d)
    return date.toISOString().substr(11, 8)
   }}
/>

Это сделало работу.Надеюсь, это сэкономит вам время.

...