ハイチャートでyAxisの秒、分、時間をプロットする

私はこのようないくつかのデータを持っています:

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

私はこれらの値をデータポイントとして使用できるようにしたいと思いますが、単純な整数ではないので、それらをプロットする方法がわかりません。理想的には、Y軸上のラベルに「時間」のようなものを表示したい、あるいは複数のy軸を使用する場合は、「最小値」の場合は「秒」、「平均」の場合は「分」、値などを適切な時間ウィンドウに適合させる。

私は日時ではなく日付であるため、datetimeオブジェクトを使用できるかどうかはわかりません。

どんなアイデアも感謝し、前もって感謝します。

6

1 答え

あなたが持っている時間が静的な文字列なら、それらを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'
        }
    }
});
10
追加された
y値を同じ形式で表示するためにツールチップをどのように適応させますか?
追加された 著者 panmari,
あなたの答えをありがとう、それは今かなり美しく見える。問題は、現在、私は軸の上にこのような何かを見ているということです。978307205000 ms。これは、1970年以来のミリ秒数であり、私が自分の価値観に追加している1-1-1が与えられているので理にかなっています。 dateTimeLabelFormatsは機能していませんか?
追加された 著者 LCL,
さて、私はこのコードを追加して解決しました:var timeToSubtract = Date.parse( "1-1-1 00:00:00");そして配列の中で 't'を押すのではなく、私はt - timeToSubtractを押しました。ありがとう
追加された 著者 LCL,
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript