python中matplotlib 中文乱码与符号问题一劳永逸式解决方案[Mac/Windows通用][个人存档]

1.为什么会产生中文乱码?

matplotlib 初始化时首先要加载一个配置文件,字体设置也在这个配置文件中。之所有无法正常显示中文是因为
这个配置文件中没有加入中文字体,解决的办法是我们需要在这个配置文件中指定一个可用的中文字体。
这个方法让你不用再每次写什么plt.rs啥的

*2.配置步骤

本人Windows7+Python3.X 完美可用
①.下载中文字体中的黑体并安装
* 根据自己的系统下载
* 链接: 字体下载(点不了就自行复制下面链接)
* https://www.fontpalace.com/font-details/SimHei/
* 安装字体Windows把下载的文件复制粘贴到C:/Windows/Fonts 文件夹中,如果之前有先卸载再安装保证字体的属性是"SimHei.ttf"
* Mac,打开字体册安装
在这里插入图片描述

找到matplotlib字体文件夹,例如:matplotlib/mpl-data/fonts/ttf,将SimHei.ttf拷贝到ttf文件夹下面
在这里插入图片描述

修改配置文件matplotlibrc(注意先备份) ,它在matplotlib/mpl-data目录下面,记事本打开并修改下面三项配置
这是前两项,去#号填SimHei,改这两项中文就OK了
在这里插入图片描述
负号要改
在这里插入图片描述
④最重要的一步,
随便new 一个python文件
在里面输入:

from matplotlib.font_manager import _rebuild

_rebuild() #reload一下

run 一下就好了
原因:配置字体之后并不会生效,需要重新加载字体文件

如果还不行就重启

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值