如何解决Python 3 matplotlit 图保存损坏
我用python 3做图,显示效果很好,但是保存的时候,右半边坏了,如下图。我不确定它有什么问题。我的代码如下:
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.ticker import rcParams,AutoMinorLocator
params = {'backend': 'ps','font.size': 30,'font.style': 'normal','axes.labelsize': 30,#'text.fontsize': 30,'axes.linewidth': 2,'legend.fontsize': 12,'xtick.labelsize': 30,'ytick.labelsize': 30,'xtick.top': True,'ytick.right': True,#'xtick.major.top': True,#'xtick.minor.top': True,#'ytick.major.right': True,#'ytick.minor.right': True,'text.usetex': True,'ps.usedistiller': 'xpdf'}
rcParams.update(params)
ion = [-2.0,-2.5,-3.0,-3.25,-3.5,-4.0,-4.5,-5.0,-5.5,-6.0]
cooling_mass = [0.036409,0.035329,0.042622,0.069795,0.090708,0.107212,0.109671,0.110513,0.107213,0.109558]
fig,ax = plt.subplots(1,figsize=(8,6))
minor_locator1 = AutoMinorLocator(5)
ax.xaxis.set_minor_locator(minor_locator1)
minor_locator2 = AutoMinorLocator(5)
ax.yaxis.set_minor_locator(minor_locator2)
ax.tick_params('both',length=10,width=2,direction='in',which='major',pad=8)
ax.tick_params('both',length=5,which='minor',pad=8)
ax.axhspan(0.036,0.107,facecolor='lightskyblue',alpha=0.5)
ax.scatter(ion,cooling_mass,color='b',marker = 'o',s=50,zorder=2)
ax.set_ylim([0.008,0.14])
ax.set_yticks([0.03,0.06,0.09,0.12])
ax.set_xlim([-6.5,-1.5])
ax.set_xticks([-6.0,-2.0])
ax.set_ylabel(r'$\rm Cooling ~Mass ~Rate ~[\rm M_\odot/yr]$',size=20,labelpad=5)
ax.set_xlabel(r'$\log {\rm U}$')
plt.gca().invert_xaxis()
plt.savefig('ion_cooling.eps',bbox_inches='tight')
plt.show()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。