如何删除matplotlib中的重复标签符号

时间:2018-04-05 02:52:27

标签: python matplotlib

我正在密谋以下内容: enter image description here

代码:

plt.figure(figsize=(9, 7))
plt.subplots_adjust(hspace=0.3, wspace=0.3)
plt.subplot(2, 2, 1)
plt.plot(dA, rhojA, 'k*')
plt.plot(dI, rhojI, 'k^')
plt.plot(dP, rhojP, 'ks')
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
plt.xlabel(r'$d_j$ (\$)')
plt.grid()
plt.ylabel(r'$\rho_j$')

plt.subplot(2, 2, 2)
plt.plot(hA, rhojA, 'k*')
plt.plot(hI, rhojI, 'k^')
plt.plot(hP, rhojP, 'ks')
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
plt.xlabel(r'$h_j$ (\$)')
plt.grid()
plt.ylabel(r'$\rho_j$')

plt.subplot(2, 2, 3)
plt.plot(tauPA, rhojA, 'k*')
plt.plot(tauPI, rhojI, 'k^')
plt.plot(tauPP, rhojP, 'ks')
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
plt.xlabel(r'$\tau^P_j$ (year)')
plt.grid()
plt.ylabel(r'$\rho_j$')

plt.subplot(2, 2, 4)
plt.plot(tauIA, rhojA, 'k*', label="$A$")
plt.plot(tauII, rhojI, 'k^', label="$I$")
plt.plot(tauIP, rhojP, 'ks', label="$P$")
plt.ticklabel_format(style='sci', axis='x', scilimits=(0,0))
plt.xlabel(r'$\tau^I_j$ (year)')
plt.grid()
plt.ylabel(r'$\rho_j$')

plt.legend(loc='upper center', bbox_to_anchor=(1.2, 1.35),
          fancybox=True, shadow=True, ncol=1)

plt.show()
#plt.savefig('myimage.png', format='png', dpi=1200)

在图例中,代码将标签符号绘制两次。我无法调试它。此外,我找不到将图例准确定位在整个图形的右侧中心。我试图手动完成它,但是,我不确定它是否完全在中心。

感谢您的帮助!

0 个答案:

没有答案