python-matplotlib画图显示中文问题

    xiaoxiao2023-10-20  184

                       python-matplotlib画图显示中文问题

    本文操作在mac os 14系统下。

    1、首先我们在python中运行以下命令来查看你的matplotlib所在位置,然后添加SimHei字体(simhei.ttf文件)。

    matplotlib.matplotlib_fname()

    下载simhei.ttf字体并安装,之后按照下面步骤首先将simhei.ttf拷贝到~python安装路径/site-packages/matplotlib/mpl-data/fonts/ttf目录中;

    2、然后修改~python安装路径/site-packages/matplotlib/mpl-data/matplotlibrc文件。根据实际情况修改,找到如下两项,去掉前面的#,并在font.sans-serif冒号后面加上SimHei,保存退出。

    font.family : sans-serif font.sans-serif : SimHei, Bitstream Vera Sans, Lucida Grande,Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif axes.unicode_minus,将True改为False,

    #作用就是解决负号'-'显示为方块的问题。

    3、删除缓存文件

    rm -rf ~/.matplotlib/*.cache

    4、代码加入以下几段

    from matplotlib.font_manager import _rebuild _rebuild() #防止中文乱码问题 mpl.rcParams['font.sans-serif']=[u'SimHei'] mpl.rcParams['axes.unicode_minus']=False

    #matplotlib不会每次启动时都重新扫描所有的字体文件并创建字体索引列表, # 因此在复制完字体文件之后,需要运行下面的语句以重新创建字体索引列表。

    5、大功告成,测试代码见https://www.jianshu.com/p/d1eeaa58ff4e(可以省略该文中其它几步)。

    最新回复(0)