bra*_*n85 18 axes matplotlib frame subplot
我正在创建一个包含3个子图的图形,并且想知道是否有任何方法可以移除它们周围的框架,同时保持轴的位置?
mwa*_*kom 19
如果你想删除轴刺,而不是其他信息(刻度,标签等),你可以这样做:
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)
Run Code Online (Sandbox Code Playgroud)
或者,更容易使用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)
Run Code Online (Sandbox Code Playgroud)
这两种方法都会给你:

您可以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()
Run Code Online (Sandbox Code Playgroud)