python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python3中Matplotlib绘图显示方块

解决Python3中Matplotlib绘图显示方块的问题

作者:Bolero_L

这篇文章主要介绍了解决Python3中Matplotlib绘图显示方块的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

解决Matplotlib绘图出现方块问题

正常情况下,是不会出现无法显示中文的,从而导致原来中文部分由方块代替的。

# 连续性和离散型分析
# 获取列名
# col_name = train_data.drop(['Quality_label'],1).columns
col_name = train_data.columns
Notdlts_count = []
for i in col_name:
    # 计算非重复值的个数   drop_duplicates:去除重复值
    Notdlts = len(train_data[i].drop_duplicates())/6000
    Notdlts_count.append(Notdlts)
plt.plot(col_name, Notdlts_count, c='r')
plt.title('非重复值的总数计算')                 # 标题
plt.xlabel('列名')                        # x轴 的轴名
plt.ylabel('非重复数据在全数据上的占比')  # y轴 的轴名
plt.xticks(rotation=90)                   # 旋转 x轴的刻度名
plt.show()

得到的图像如下,出现的方块问题

在这里插入图片描述

产生原因

字体的默认设置中并没有中文字体

解决办法

只需要在开头手动添加中文字体的名称(两行代码)即可

#解决matplotlib绘图中文显示问题
plt.rcParams['font.sans-serif'] = ['SimHei']
# plt.rcParams['font.sans-serif'] = ['KaiTi']   # 指定默认字体
plt.rcParams['axes.unicode_minus'] = False   # 解决保存图像是负号'-'显示为方块的问题

在这里插入图片描述

总结

顺利解决问题!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文