zoukankan      html  css  js  c++  java
  • Mac下使用Matplotlib无法显示中文的解决办法

    参考:matplotlib图例中文乱码? - 知乎用户的回答 - 知乎 https://www.zhihu.com/question/25404709/answer/309784195

    1、下载字体安装包(需要直接的文件的,可以底下回复我)

    2、解压之后在系统当中安装好,我的是Mac,打开字体册就可以安装了

    3、找到matplotlib字体文件夹,例如:matplotlib/mpl-data/fonts/ttf,将SimHei.ttf拷贝到ttf文件夹下面

    4、修改配置文件matplotlibrc 同样在matplotlib/mpl-data/fonts目录下面,修改下面三项配置

    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:False,#作用就是解决负号'-'显示为方块的问题

    假如你只做到了这里,那要小心喽,代码里面还是会报错,画图还是会显示方块,就问你气不气。。。。

    5、最重要的一步来了,上面的几步我很快就弄好了,就这最后一步死活中文就是显示方块,原因是改了配置之后并不会生效,需要重新加载字体,在Python中运行如下代码即可:

    from matplotlib.font_manager import _rebuild

    _rebuild() #reload一下

    不过可能还是会报错,这个时候把py cha r m(也就是你所运行的编辑器彻底关闭,重新打开后就可以了)

    为了保险起见,我在开头还是定义了一下,输入

    plt.rcParams['font.sans-serif'] = ['SimHei']  # 显示中文标签

    运行通过,显示中文了!!

  • 相关阅读:
    Flask中路由系统、Flask的参数及app的配置
    linux之master和minion
    linux之docker学习
    项目的发布(nginx、uwsgi、django、virtualenv、supervisor)
    Linux下安装和使用nginx
    linux下主从同步和redis的用法
    论图像识别的预处理技术
    图像技术分析 图像编辑器核心技术
    C++ Primer 第九章 顺序容器
    图像灰度化公式 颜色空间用途说明
  • 原文地址:https://www.cnblogs.com/xingnie/p/12189630.html
Copyright © 2011-2022 走看看