如何解决matplotlib中文乱码和坐标轴负号显示

问题描述:

当我第一次使用matplotlib的时候,坐标轴刻度明明设置的是中文,但是就是不显示中文。出现中文乱码问题。

原因分析:

因为matplotlib是外国人进行编写,当时没有考虑到所有语言,如果要显示中文的话就需要修改配置文件。

参考方案:

https://www.cnblogs.com/nucdy/p/6813320.html
https://blog.csdn.net/cjfblog/article/details/78936302

解决:

方法一
在代码中加上如下代码,plt是导入matplotlib的别名

plt.rcParams['font.family'] = ['sans-serif']#用来正常显示负号
# 或者是:plt.rcParams['axes.unicode_minus']=False #用来正常显示负号
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签

缺点:每次新建都要添加这两行代码
方法二
一般电脑会自带微软雅黑的字体,可以找到,如果找不到,就下载一个双击安装。
在这里插入图片描述

要修改matplotlib的配置文件,需要先知道matplolib的安装路径,以下代码为查看安装路径

import matplotlib
matplotlib.matplotlib_fname()

由安装路径找到matplotlibrc文件,把刚才的字体放在matplotlibrc同级目录下的fonts/ttf文件夹下
在这里插入图片描述
修改matplotlibrc文件
在这里插入图片描述
将红框内代码注掉,然后在font.sans-serif中添加刚安装的字体

在这里插入图片描述
将如下目录中的两个文件删除,删除后重启Jupyter Noteboom

C:\Users\Administrator\.matplotlib

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值