matplotlib中文无法显示的解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/oShiShuiNianHua1234/article/details/66973485

Windows下matplotlib出现乱码解决方案

1. 在脚本中添加代码
from pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei'] # 指定默认字体mpl.rcParams['axes.unicode_minus'] = False # 解决保存图像是负号'-'显示为方块的问题

Ubuntu下matplotlib出现乱码解决方案1

  1. 在Ubutu中确认系统中已有的中文字体库: 
    $ fc-list :lang=zh 
    终端显示:
  2. $ fc-list :lang=zh /usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf: Droid Sans Fallback:style=Regular
      可以看到只有一种字体,Droid Sans Fallback

2. 在脚本中添加代码
import matplotlib as mpl
mpl.rcParams['font.sans-serif'] = ['Droid Sans Fallback']

Ubuntu下matplotlib出现乱码解决方案2

  1. 首先将windwos中fonts目录下的simhei.ttf拷贝到/usr/share/matplotlib/mpl-data/fonts/ttf目录中
  2. 在代码中添加:

Ubuntu下matplotlib出现乱码解决方案3

永久解决方法

  1. 首先将windwos中fonts目录下的simhei.ttf拷贝到/usr/share/matplotlib/mpl-data/fonts/ttf目录中
  2. 修改配置文件 
    去除这三列之前的‘#’ 
    在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 : False #解决负号'-'显示为方块的问题
    ```
  3. 删除~/.cache/matplotlib的缓冲


参考:

http://blog.csdn.net/u011408943/article/details/52005074
http://blog.csdn.net/github_33934628/article/details/77874674












猜你喜欢

转载自blog.csdn.net/oShiShuiNianHua1234/article/details/66973485