matlablib安装Helvetica字体

matlablib安装Helvetica字体

一、问题描述:

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['Helvetica']  

Font family ['sans-serif'] not found.Falling back to DejaVu Sans

二、解决方案:

在linux环境中的matplotlib里装入Helvetica.ttf字体即可

  1. 下载字体

  2. sudo apt-get install fondu

  3. 导航到复制.dfont文件的位置

  4. fondu Helvetica.dfont,这样就生成了ttf文件

  5. 把字体放到指定目录

    # python 终端获取路径
    import matplotlib    
    print(matplotlib.matplotlib_fname())
    #/root/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
    
    # 下载好的Helvetica.ttf放到该目录下 
    # (shell)
    mv ./Helvetica.ttf /root/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/fonts/ttf/
    
  6. 删除matplotlib的缓冲目录

    # python 终端获取缓存路径
    import matplotlib
    print(matplotlib.get_cachedir())
    # /root/.cache/matplotlib
    
    # 删除缓冲目录
    # (shell)
    rm -rf /root/.cache/matplotlib
    
  7. 修改matplotlibrc文件

    # (shell)
    vim /root/anaconda3/lib/python3.7/site-packages/matplotlib/mpl-data/matplotlibrc
    
    # 修改的内容
     font.family         : sans-serif   
     # 去掉前面的#     
     font.sans-serif     :Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif  
     # 去掉前面的#
    

三、Well done!

原文地址:https://www.cnblogs.com/icodeworld/p/13778096.html