2

pyplot プロットの奇妙な動作を見つけました。データ ポイントの数が一定量を超えると、線が最後まで描画されません。右端に空白があり、取り除くことができません。pyplot に最後までプロットさせる方法を知りたいです。

Python 2.7.5 と matplotlib 1.2.1 を使用しています。

from pylab import *
from random import random
bins = arange(0, 180, 5)
data = array([random() for i in xrange(len(bins))])
plot(bins[:10], data[:10], drawstyle="steps-mid") #draws till the end
title("some data")
figure()
plot(bins, data, drawstyle="steps-mid") #white space at the right
title("all data")
show()

これは、他のアクティブなdrawstyleオプションでも発生します。プロット後にa を使用しxlimて xaxis を縮小し、切り取られた部分が軸からも切り取られるようにすることもできますが、軸をそのままにしておきたいので、そうしないでください。binsに追加の要素とゼロを追加して後でdata使用することを考えましxlimたが、これは本当に風変わりな修正だと思います。

プロットは、すべてのデータ一部のデータについて見ることができます。

4

1 に答える 1

1

Axes'メソッドを使用して、set_xlim()表示されているオートレンジ動作を回避してください。

data = array([random() for i in xrange(len(bins))])
plot(bins[:10], data[:10], drawstyle="steps-mid") #draws till the end
title("some data")

fig = figure()
ax = fig.add_subplot(111)
plot(bins, data)
ax.set_xlim(min(bins), max(bins)
ax.set_title("all data")
show()
于 2013-08-21T13:27:42.413 に答える