matplotlib添加字体及中文乱码问题

  1. 下载中文字体:
    http://www.font5.com.cn/font_download.php?id=151&part=1237887120

  2. 将下载的字体ttf文件放到matplotlib的字体库位置:
    anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/fonts/ttf/

  3. 删除matplotlib的字体缓存,文件位置:
    mpl.get_cachedir()–>获取字体cache位置的方法(应该有获取其他配置的方法)
    .cache/matplotlib/fontList.json
    该文件删除后,会自动生成,重新查找解析字体库,并生成这个文件

  4. 代码中的修改:
    rcParams[‘font.family’] = ‘sans-serif’ #用来正常显示中文
    rcParams[‘font.sans-serif’] = [‘SimHei’] #用来正常显示负号

  5. 永久修改:
    mpl.matplotlib_fname() –>获取配置文件的方法
    可在matplotlib的配置文件中修改:/home/rickey/anaconda3/lib/python3.6/site-packages/matplotlib/mpl-data/matplotlibrc
    其中有font.family和font.sans-serif的配置项

  6. font.family和font.sans-serif的联系:
    font.family是一个字体集,其中包含多种字体,比如sans-serif表示中文,中文可以有多种字体,比如正楷,宋体等
    SimHei :黑体
    SimSun :宋体
    以上具体的某一种字体可以在字体网站上下载,并安装。

    https://www.cnblogs.com/tkzc2013/p/5857794.html

你可能感兴趣的:(AI)