问题1,坐标轴不显示中文,如上图所示:
问题1,解决方案:加入 plt.rcParams['font.sans-serif'] = ['SimSun']这段代码后,成功显示中文。
问题2:坐标轴中文不能完全显示,如上图所示,尝试了很多种方法,包括调节画布大小和坐标轴字号大小,都没有解决。
问题2解决方案:加入plt.tight_layout()
函数后成功解决。
函数详解:
plt.tight_layout()
是 Matplotlib 中的一个函数,它可以自动调整子图、坐标轴和标题之间的间距,使得图像更紧凑,更美观。 它会忽略那些被标记为不可见或已经被删除的子图。 在绘制多个子图时,可以使用该函数来调整布局,以免各子图之间的重叠或空隙过大。
两个问题的完整代码:
plt.rcParams['font.sans-serif'] = ['SimSun']#解决无法显示中文
plt.rcParams['axes.unicode_minus'] = False
plt.xlabel('真实标签',fontsize=10)#绘制混淆矩阵图中的文本标签
plt.ylabel('预测标签')
plt.tight_layout()#自动调整子图间距,使图紧凑美观
# 这里这个savefig是保存图片,如果想把图存在什么地方就改一下下面的路径,然后dpi设一下分辨率即可。
plt.savefig('./tsne/hunxiaojuzhen_'+str(epoch)+'.png', dpi=350)
最终效果图: