2016-10-31 21 views
0

ハイチャートで日時シリーズチャートを実装しようとしています。私は、UNIXタイムスタンプを提供してきましたし、それはデータの8時間、このようなデータをプロット:ハイチャートのx軸に日時フォーマットを設定

enter image description here

あなたが見ることができるように、私はこのチャートの日付を知ることができません。私は最初のポイント( '%e。%b')に日付を表​​示したい。今する日の変更は、それが自動的に24時間、このような日付を表示:

enter image description here

これが今の私の実装です:

 xAxis: { 
     type: 'datetime', 
     crosshair: true, 
     gridLineWidth: 0 
     } 

私は以下のようにフォーマッタを使用してみましたが、それはありません

 xAxis: { 
     type: 'datetime', 
     labels: { 
      formatter: function() { 
      if (this.isFirst) { 
       return Highcharts.dateFormat('%e. %b', this.value); 
      } 
      return Highcharts.dateFormat('%H:%M', this.value); 
      } 
     }, 
     crosshair: true, 
     gridLineWidth: 0 
     } 

私は最初の点でフォーマッタ関数を記述しようとしています真夜中に、日付とそれ以外の時間を表示すると、時刻はHH:mmで表示されますか?

+0

*「それは示していHH:mmの時間* "これは正確にあなたが表示するように言ったものです:' Return Highcharts.dateFormat( '%H:%M'、this.value); '実際の問題/質問が何であるかはわかりません。 – jlbriggs

+0

@jlbriggs明確でないことを申し訳ありません。データを%eで示す値を表示したい。真夜中頃の%b。デフォルトのフォーマッタで得られるのと同じ値です。 – SpaceX

答えて

1

あなたはそれに応じて軸ラベルのデータ値の時間、および形式を確認するためにgetHours()を使用することができます。

labels: { 
    formatter: function() { 
     if (this.isFirst) { 
     return Highcharts.dateFormat('%e. %b', this.value); 
     } 
     else { 
     var t = new Date(this.value); 
     var h = t.getHours(); 
     return h == 0 
      ? Highcharts.dateFormat('%e. %b', this.value) 
      : Highcharts.dateFormat('%H:%M', this.value); 
     } 

    } 
    } 

フィドル:

+0

ありがとう、それは働いた:) – SpaceX

関連する問題