0

秒単位の違いが含まれることがある日時のデータセットがあります。

テキストが互いに重ならないように、日付時刻 (x 軸) を垂直に表示していますが、見た目からすると、実質的に重なり合っています。これは、秒単位で異なるデータがあり、日付が異なる日にわたる可能性があるため、x 軸が非常に狭いためだと思います。これに関するもう 1 つの問題は、グラフ上のデータポイント間の距離が非常に狭いため、それらのデータポイントも重なり合っていることです。

以下はセットの例です (既に を使用して変換されていdate2num()ます)。秒単位で異なりますが、数日にわたっています。

dates = [734949.584699074, 734959.4604050926, 734959.4888773148, 734949.5844791667, 734959.037025463, 734959.0425810185, 734959.0522916666, 734959.4607060185, 734959.4891435185, 734949.5819444444, 734959.0348726852, 734959.0390393519, 734959.0432175926, 734959.0515393518, 734959.4864814815, 734949.5842476852, 734959.0367476852, 734959.038125, 734959.0423032407, 734959.052025463, 734959.4603819444, 734959.4895023148, 734949.5819791667, 734959.0348958333, 734959.0390740741, 734959.0432407408, 734959.0515856481, 734959.4579976852, 734959.487175926]

values =  [39, 68, 27, 57, 22, 33, 70, 19, 60, 53, 52, 33, 87, 63, 78, 34, 26, 42, 24, 97, 20, 1, 32, 60, 61, 48, 30, 48, 17]

dformat = mpl.dates.DateFormatter('%m-%d-%Y %H:%M:%S')
figure = plt.figure()
graph = figure.add_subplot(111)
graph.xaxis.set_major_formatter(dformat)
plt.xticks(rotation='vertical')
figure.subplots_adjust(bottom=.35)
graph.plot_date(dates,values)
graph.set_xticks(dates)
plt.show()

2 つの質問があります。

  • テキストとデータポイントがはっきり見えるように、x 軸に間隔を空ける方法はありますか? これは非常に長い水平グラフになりますが、これを画像ファイルに保存します。

  • 最初の質問に関連します: グラフの水平方向の長さを減らすために、データのない領域が短くなるように x 軸の目盛りを圧縮する方法はありますか?

    たとえば、値を持つ 3 つの日付があるとします。

     March 22 2013 23:11:04        55
    
     March 22 2013 23:11:10        70
    
     April 1 2013 10:43:56         5
    

    3 月 22 日 23:11:10 と 2013 年 4 月 1 日 1-:43:56 の間のスペースを圧縮することは可能ですか?

4

1 に答える 1

0

あなたは基本的に不可能なことを求めています.x軸を線形に保ちながら、日の範囲を表示することも、数秒の違いを明らかにすることもできません. これを試してみたい場合は、次のようにすることができます(doc)

fig.set_size_inches(1000, 2, forward=True)

これにより、幅1000インチ、高さ2インチの体型になりますが、それを行うのはかなり不格好です.

私がすべきことは、Dermen のリンク ( Python/Matplotlib - Is there a way to make a discontinuous axis? ) を適用して、データに大きなブレークがある場所ならどこでもブレークを適用することです。最終的には、それぞれ数秒幅の複数のセクションが作成され、目盛りラベルが読める十分なスペースが確保されます。

于 2013-04-03T00:28:09.667 に答える