彻底解决Python里matplotlib不显示中文的问题

您所在的位置:网站首页 birthdaytome翻译中文 彻底解决Python里matplotlib不显示中文的问题

彻底解决Python里matplotlib不显示中文的问题

2024-05-28 19:12| 来源: 网络整理| 查看: 265

在很长一段时间里用Python绘图,matplotlib都不能很好的显示中文,起初是认为我的pycharm里的设置问题,但是发现同样的问题在spyder里也同样的出现了,虽然有的地方可以用英文实在不行用拼音。。。但是在作图这里没有中文真的是太不方便了,机缘巧合下在年前终于找到问题的根源了,于是乎爱刨根问底儿的我把整个过程的解决方法分享给大家~~

一共有两种解决方案,我强烈推荐第一种,因为更为方便,绘图时不用再写别的参数,调用一次即可,第二种方法也会写出来但是更多的是作为了解,主要因为相比之下太麻烦

方法一:

示例:绘制每月的商品数量

X轴月份显示为中文增加X轴Y轴中文,图标标题from matplotlib import pyplot as plt a = ["一月份","二月份","三月份","四月份","五月份","六月份"] b=[56.01,26.94,17.53,16.49,15.45,12.96] plt.figure(figsize=(20,8),dpi=80) plt.bar(range(len(a)),b) #绘制x轴 plt.xticks(range(len(a)),a) plt.xlabel("月份") plt.ylabel("数量") plt.title("每月数量") plt.show()

不出意外绘制出来的图是这样的。。。。。

绘制出来的图片,在所有应该显示为中文的地方均显示乱码

之前一直以为是系统中字符集支持的问题,其实并不是这样,根本原因是matplotlib内置的原因,直到我知道了 matplotlib.rc 这个方法,其实这个我也不太会用,那么我们看一下这个的源码写的是该如何使用(学会看源码真的很重要!!)

首先它肯定是能设置字体和颜色的,有关字体我们怎么设置呢?我们接着往下看

有关字体的设置找到了,可以接收为字典,它利用了**font接收了一下字典,其实我们我们完全可以一行搞定,当然我更喜欢横着写,例如下面这样其实也是OK的~~

matplotlib.rc("font",family='MicroSoft YaHei',weight="bold")


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3