爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9844|回复: 0

[经验总结] plt显示中文问题解决

[复制链接]

新浪微博达人勋

发表于 2019-12-13 09:36:19 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
根据网上查到的资料进行一下总结:

1、在终端python 的环境下,查看字体路径
        import matplotlib   
        print(matplotlib.matplotlib_fname())
2、下载simhei.ttf(或者其他什么字体,对应4、里面添加的字体名字) ,放到指定目录下
3、在home目录下,执行 ctrl + h ,打开隐藏目录, 删除 ~/.cache/matplotlib的缓冲目录,应该是一个文件一个文件夹,一并删掉就好。
4、修改/home/muli/anaconda3/lib/python3.5/site-packages/matplotlib/mpl-data 里面的matplotlibrc文件
        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,作用就是解决负号'-'显示为方块的问题
        (具体这个步骤中对应的名称修改方法没有试验,看起来就是把字体名字放到font.sans-serif后面就好了)
5、在py文件中添加:
        # *_*coding:utf-8 *_*
        # plt.rcParams['font.sans-serif']=['simhei'] #用来正常显示中文标签
        plt.rcParams['font.family']=['simhei'] #用来正常显示中文标签
        plt.rcParams['axes.unicode_minus']=False

       ⑤这个是我遇到的最大的坑,网上资料里写的基本都是:
                               plt.rcParams['font.sans-serif']=['simhei']
                               plt.rcParams['axes.unicode_minus']=False
                               或者是只写一句:
                               plt.rcParams['font.family']=['simhei']
        这样子,但是一开始我尝试这样,都不行,最后逼急了,试了一下现在的font.family 加 axes的组合,结果就行了。
        估计跟系统配置有关系,两种方式都试一下应该能解决大部分问题。





密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表