为了去掉图中的框架,我写了
frameon=False
与pyplot完美结合。图,但与matplotlib。图只移除了灰色背景,帧保持不变。此外,我只想显示线条,其余的图形都是透明的。
用pyplot我可以做我想做的事情,我想用matplotlib做一些很长的原因,我宁愿不提扩展我的问题。
为了去掉图中的框架,我写了
frameon=False
与pyplot完美结合。图,但与matplotlib。图只移除了灰色背景,帧保持不变。此外,我只想显示线条,其余的图形都是透明的。
用pyplot我可以做我想做的事情,我想用matplotlib做一些很长的原因,我宁愿不提扩展我的问题。
当前回答
我过去常常这样做:
from pylab import *
axes(frameon = 0)
...
show()
其他回答
我过去常常这样做:
from pylab import *
axes(frameon = 0)
...
show()
在新版本的matplotlib中,摆脱丑陋帧的最简单方法是:
import matplotlib.pyplot as plt
plt.box(False)
如果你真的必须总是使用面向对象的方法,那么执行:ax.set_frame_on(False)。
正如我在这里回答的,你可以通过样式设置(样式表或rcParams)从所有的图中删除棘线:
import matplotlib as mpl
mpl.rcParams['axes.spines.left'] = False
mpl.rcParams['axes.spines.right'] = False
mpl.rcParams['axes.spines.top'] = False
mpl.rcParams['axes.spines.bottom'] = False
plt.axis('off')
plt.savefig(file_path, bbox_inches="tight", pad_inches = 0)
plt。Savefig本身有这些选项,只需要在之前设置轴
plt.box(False)
plt.xticks([])
plt.yticks([])
plt.savefig('fig.png')
应该能行。