有没有办法保存matplotlib图形,而框架周围没有边框,同时保持背景不透明?
我在下面的代码中显示将帧设置为“关闭”不起作用,因为这会删除背景使其透明,而我想保留白色背景,只是没有边框。
a = fig.gca()
a.set_frame_on(False)
以下是我正在尝试做的截图。如果可以移除边框,那么我可以单独绘制x轴线。
非常感谢所有建议。
答案 0 :(得分:7)
您可以尝试使用ax.spines
。例如:
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(x, y)
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines['left'].set_visible(False)
如果你想删除所有刺(也可能是蜱),你可以
[s.set_visible(False) for s in ax.spines.values()]
[t.set_visible(False) for t in ax.get_xticklines()]
[t.set_visible(False) for t in ax.get_yticklines()]
答案 1 :(得分:6)
此处提出了类似的问题:How can I remove the top and right axis in matplotlib?。谷歌搜索“hide axes matplotlib”将其作为第5个链接。
移除刺:
x = linspace(0, 2 * pi, 1000)
y = sin(x)
fig, ax = subplots()
ax.plot(x, y)
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
ax.spines['left'].set_visible(False)
ax.grid(axis='y')
答案 2 :(得分:1)
更简单的方法:
id total
1 2.0
2 6.0