3つのサブプロットを持つFigureを作成していますが、Axesを配置したまま、それらの周りのフレームを削除する方法があるかどうか疑問に思いましたか?
軸のスパインを削除したいが、他の情報(目盛り、ラベルなど)は削除したくない場合は、次のように実行できます。
fig, ax = plt.subplots(7,1, sharex=True)
t = np.arange(0, 1, 0.01)
for i, a in enumerate(ax):
a.plot(t, np.sin((i + 1) * 2 * np.pi * t))
a.spines["top"].set_visible(False)
a.spines["right"].set_visible(False)
a.spines["bottom"].set_visible(False)
または、より簡単に seaborn を使用します:
fig, ax = plt.subplots(7,1, sharex=True)
t = np.arange(0, 1, 0.01)
for i, a in enumerate(ax):
a.plot(t, np.sin((i + 1) * 2 * np.pi * t))
seaborn.despine(left=True, bottom=True, right=True)
どちらのアプローチでも以下が得られます。
plt.box(on=None)
を試してみてくださいonlyプロットの周りの境界ボックス(フレーム)を削除しました。
plt.axis('off')
目盛りラベルと境界ボックスを削除しましたが、これは私が達成しようとしていたものではありませんでした。
お役に立てれば。
軸ハンドルのaxis('off')
メソッドを使用すると、このようなことを実現できます。これはあなたが求めているようなものですか? (図の下のサンプルコード)。
fig, ax = plt.subplots(7,1)
t = np.arange(0, 1, 0.01)
for i, a in enumerate(ax):
a.plot(t, np.sin((i+1)*2*np.pi*t))
a.axis('off')
plt.show()