web-dev-qa-db-ja.com

matplotlibプロットを軸を超えさせるにはどうすればよいですか?

画像プロットスクリプトをmatlabからmatplotlib/pylabに変換する必要があり、以下のmatlab画像と同じ効果を達成しようとしています。

image generated using matlab

ご覧のとおり、プロットのzオーダーはグリッドのzオーダーよりも高いように見えるため、マーカーは軸によって隠されていません。ただし、matplotlibイメージで同じことを行う方法がわかりません。

eimage generated with matplotlib

Y軸の制限を増やすことなく同じ表示を得ることができるかどうか疑問に思います。

25
nay

マーカーを軸を超えて表示するには、クリッピングをオフにすることができます。これは、plotコマンドのキーワード引数を使用して実行できますclip_on=False

例えば:

import matplotlib.pyplot as plt
plt.plot(range(5), range(5), 'ro', markersize=20, clip_on=False, zorder=100)
plt.show()

enter image description here

39
tom10

これは、zorder kwargの使用方法の完全な例です: http://matplotlib.sourceforge.net/examples/pylab_examples/zorder_demo.html
zオーダーが高いほど、グラフ要素が前景にあることに注意してください。

2番目の質問については、figsizeクラスのインスタンスに対するFigure kwargを見てください。 http://matplotlib.sourceforge.net/api/figure_api.html?highlight = figsize#matplotlib.figure.Figure

問題が発生した場合は、コードの一部を投稿してください。より詳細な推奨事項を提供できるようになります。幸運を祈ります。

線を次々にプロットする場合は、プロット呼び出しの順序を変更するだけで、zオーダーが修正されます。

0
Kakashi