Отображение секунд, минут и часов на оси Y с помощью Highcharts - PullRequest
6 голосов
/ 25 ноября 2011

У меня есть некоторые данные, которые выглядят так:

min = "00:09" med = "03:11" mean = "23:39" max = "12:40:26"

Я хотел бы иметь возможность использовать эти значения в качестве точек данных, но я не уверен, как их отобразить, поскольку они не являются простыми целыми числами.В идеале, я бы хотел, чтобы метки на оси Y отображали что-то вроде «часов» или если бы я использовал несколько осей Y, тогда он мог бы показывать «секунды» для значений «min», «минуты» для «среднего»значения и т. д., адаптируясь к соответствующему временному окну.

Я не уверен, смогу ли я использовать объекты даты и времени, поскольку у меня есть только значение времени, а не дата.

Любые идеи будутоценили и спасибо заранее.

1 Ответ

10 голосов
/ 26 ноября 2011

Если у вас есть статические строки, вы можете преобразовать их в объект datetime ...

//convert 'string' times into a timestamp (milliseconds)
//so long as your string times are consistently formatted
//e.g. "0:03:00" not "3:00"
var t = Date.parse("1-1-1 " + yourTime)

... Но если вы вообще можете превратить их в значение в миллисекундах, выдолжно быть в порядке.

Затем используйте нормальный формат времени для оси Y и отформатируйте его так, как вам нравится, используя формат метки даты ...

var chart = new HighChart({
    //...
    yAxis: {
        type: 'datetime', //y-axis will be in milliseconds
        dateTimeLabelFormats: { //force all formats to be hour:minute:second
            second: '%H:%M:%S',
            minute: '%H:%M:%S',
            hour: '%H:%M:%S',
            day: '%H:%M:%S',
            week: '%H:%M:%S',
            month: '%H:%M:%S',
            year: '%H:%M:%S'
        }
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...