作图需要,对于新手来说,网络信息多而不精,现将本人这一段作图需要的参数设置记录一下,作为注释说明。
结合实现两幅子图共享x轴分析说明:
font = FontProperties(fname=r"/usr/share/fonts/truetype/arphic/ukai.ttc",size=15) #设置图中字体
fig = plt.figure(facecolor='white')
ax1 = fig.add_subplot(211)
# 可用MarkerEdgeColor或mec设置标记边缘颜色;MarkerFaceColor或mfc设置标记填充颜色;MarkerSize设置标记大小 (这个点真心不好找,无意间看了一个无关的帖子瞅到了这个点)
ax1.plot(true_data, marker='o', color='r', mec='r', mfc='w',label=u'真实值') # r:红色 w:白色 g:绿色 b:蓝色 c:青绿色 m:洋红色 k:黑色
ax1.plot(predicted_data, '+-', MarkerSize=8, color='k', mec='k', mfc='w', label=u'预测值')
plt.setp(ax1.get_xticklabels(), visible=False) # 获得当前图像x轴,设置不可见
plt.ylabel(u'y1轴标签', fontproperties=font) # 设置图中汉字,可解决汉字乱码问题
plt.ylim(ymin=2) # 设置当前图像y轴的最小值,根据需要设置
ax1.legend(prop=font) # 设在当前图像标签 ,两个子图避免覆盖,此处需设置当前子图的属性,不设置的话上面的两个label显示不出来
ax2 = fig.add_subplot(212, sharex=ax1) # 共享x轴
ax2.bar(range(96), error_data, color='k')
plt.xlabel(u'时间段', fontproperties=font)
plt.ylabel(u'y2轴标签', fontproperties=font)
plt.subplots_adjust(hspace=0) # 设置两个子图的间距
plt.ylim(ymax=110) # 设置当前图像y轴的最大值
plt.ylim(ymin=-110) # 设置当前图像y轴的最小值
|
|