我有一个微笑的问题:Legend only shows one label when plotting with pandas 我想在一个额外的图中绘制一些数据的每一列(数据的异常值设置为平均值+ 10 * Sigma)。
传奇应包含:Sigma和3 * Sigma以上和以下的异常值。
我试过了:
for i in range(len(data.columns)):
m= data[name[i]].mean()
s = data[name[i]].std()
labels=[]
labels.append('sigma: '+str(round(s,2)))
labels.append('> 3*sig: '+str(above[0][i]))
labels.append('< 3*sig: '+str(under[0][i]))
plt.xticks([-10*s+m,-3*s+m,-2*s+m,-s+m,m,s+m,2*s+m,3*s+m,10*s+m],
['<3*s','-3*s','-2*s','-s','0','s','2*s','3*s','>3*s'])
ax=data.ix[:,i].plot(xlim=(-11*s+m,11*s+m),
title=plot,
kind='hist',
bins=30,
legend=True)
ax.legend(labels,loc='best')
ax.set_xlabel('sigma')
plt.show()
plt.close()
为什么我的情节中只有一个标签?