2011-01-23 3 views
22

私は24時間で降雨を表す棒グラフを表示しています。今、私が持っていた最初の問題は、この例を参照してください、FLOTのバーのデフォルトの1ピクセル幅だった:flotのバー幅の問題

alt text

私は解決策を検索し、このようなことspecifing barwidthが見つかりました:

bars: { 
     show: true, 
     barWidth : 60*60*1000 //1h 
    } 

を問題を解決します。今は実際には動作しますが、悪い結果が1つあります。私の例では(24降雨discretly 1時間ごとに表示されるグラフは)今、この処理が行われます。

alt text

あなたはバーが1ピクセル幅のある最初の例からもわかるように、時間は午後1時、前日から行きます翌日13:00に今度はバーの幅を固定すると、何らかの理由で時間が13:00から14:00になります。今私は50 * 60 * 1000のような異なったbarWidth設定を試しましたが、それは正確にマージンが増えず、マージンが各バーに見えるようになります。

今、この問題を解決する方法を知りたいと思います。タイムラインは最初の例のようになり、バーの幅は1時間になりますか?

答えて

9

問題は、グラフをフロートするためにphpでデータを埋め込むことにありました。間違ったデータの集計を見落とし、条件を満たしていたため、PHPの配列に時間が追加されました。最終的に1時間余分に追加されました。だから私の場合、barWidth:60 * 60 * 1000は適切なものでした。

4

グラフのx軸は、13:00(最大値)に表示するバーがあれば、それを表示できるように描画されています。これは実際にFlotのことではなく、より広いバーを持つことの結果です。あなたが実際に遠くに行きたくない場合は、x軸の "min"と "max"オプションを使ってこれを設定することができます。しかし、あなたがそれを行い、最後の13:00に何かデータがあれば、それを表示することはできません(より広いバーでは十分なスペースがないため)。

+0

あなたのお答えいただきありがとうございます、私はそれについて考えましたが、昨日ここでこの質問を投稿した後、コードをもう一度見直して回答を見つけました。 –