ハッチング パターンを持つ長方形パッチをプロットに追加しようとすると、ハッチング値も指定しているときにキーワード引数 edgecolor を 'none' に設定することはできないようです。言い換えれば、エッジのないハッチングされた長方形を追加しようとしていますが、パターンの塗りつぶしがあります。これはうまくいかないようです。長方形パッチの周りにエッジを描画できるようにした場合にのみ、パターンが表示されます。
望ましい動作を達成する方法について何か助けはありますか?
ハッチング パターンを持つ長方形パッチをプロットに追加しようとすると、ハッチング値も指定しているときにキーワード引数 edgecolor を 'none' に設定することはできないようです。言い換えれば、エッジのないハッチングされた長方形を追加しようとしていますが、パターンの塗りつぶしがあります。これはうまくいかないようです。長方形パッチの周りにエッジを描画できるようにした場合にのみ、パターンが表示されます。
望ましい動作を達成する方法について何か助けはありますか?
linewidth
ゼロに設定する必要がある引数を使用する必要があります。
例(他の質問の回答に基づく):
import matplotlib.pyplot as plt
import matplotlib.patches as patches
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111)
# generate some data:
x,y = np.meshgrid(np.linspace(0,1),np.linspace(0,1))
z = np.ma.masked_array(x**2-y**2,mask=y>-x+1)
# plot your masked array
ax.contourf(z)
# plot a patch
p = patches.Rectangle((20,20), 20, 20, linewidth=0, fill=None, hatch='///')
ax.add_patch(p)
plt.show()
次の画像が表示されます。