mac下解决matplotlib乱码的问题,保证可用,找了很多方法都行不通,亲测可用
程序员文章站
2022-03-18 21:37:52
...
1.首先mac应该下载simhei.ttf 字体,网盘地址:
链接: https://pan.baidu.com/s/1SmLTtYAYU-mjyUVg8a0B4A 密码: mmj5
2.将下载的simhei.ttf字体拷贝到 python位置/site-packages/matplotlib/mpl-data/fonts/ttf 目录下。
如果找不到可以在“终端”中输入python3,然后,import sys print(sys.path())找到site-packages的目录,然后去目录拷贝
3. 然后打开 python位置/site-packages/matplotlib/mpl-data/matplotlibrc这个文件,删除这两句代码前面的 #
#font.family : sans-serif
#font.sans-serif : DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
正常情况下mac的python是在Library文件夹中,所以不允许直接进行文本编译,但是我们可以在中终端用下面的命令修改 sudo vim /Library/Python/2.7/site-packages/matplotlib/mpl-data/matplotlibrc
经常用linux或者mac总该知道vim该怎么用吧这里就不多说了
至于”/Library/Python/2.7”是我的电脑自带的python的位置,不同电脑有可能不同
4.然后在每次使用matplotlib作图时在加上如下的代码
from pylab import mpl
import matplotlib.pyplot as plt
from matplotlib.font_manager import _rebuild
_rebuild()
mpl.rcParams['font.sans-serif']=[u'SimHei']
mpl.rcParams['axes.unicode_minus']=False
以上就可以解决mac下matplotlib乱码的问题。