美文网首页
Mac系统下matplotlib的中文显示问题解决

Mac系统下matplotlib的中文显示问题解决

作者: 会口遁的naruto | 来源:发表于2017-10-10 16:55 被阅读0次

    在mac上使用matplotlib绘图的时候之前总是不能输出中文,这是一个很简单的小bug,通过搜索教程找到一个稍微简单的解决方法如下:

    1. 添加SimHei字体(simhei.ttf文件)

    首先我们在python中运行以下命令来查看你的matplotlib所在位置:

    matplotlib.matplotlib_fname()
    

    $$$ a_t $$$

    参考上述的输出结果,进入存储字体的目录

     cd [你自己的一些目录]/py2.7/lib/python2.7/site-packages/matplotlib/mpl-data/fonts
    

    从网上下载SimHei字体,将simhei.ttf存储入上面的这个fonts目录中,最好重命名为 SimiHei.ttf

    2. 删除~/.matplotlib/下的所有缓存文件

    rm -rf ~/.matplotlib/*.cache
    

    3. 在代码中声明使用simhei字体

    开始这一步的时候,最好先重启一下你的jupyter
    在你要画图的的Python文件中,添加

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

    以下是一个例子

    import numpy as np
    
    %matplotlib inline
    import matplotlib.pyplot as plt
    import matplotlib
    plt.rcParams['axes.labelsize'] = 14
    plt.rcParams['xtick.labelsize'] = 12
    plt.rcParams['ytick.labelsize'] = 12
    plt.rcParams['font.sans-serif'] = ['SimHei']
    
    from __future__ import division
    def logit(x):
        return 1/(1+np.exp(-x))
    
    z = np.linspace(-5,5,200)
    plt.plot([-5,5],[0,0],'k-')
    plt.plot([-5,5],[1,1],'k--')
    plt.plot([0,0],[-2,1.2],'k-')
    plt.plot([-5,5],[-3/4, 7/4], 'g--')
    plt.plot(z, logit(z), 'b-', linewidth=2)
    props = dict(facecolor='black', shrink=0.1)
    plt.annotate('Saturating', xytext=(3.5, 0.7), xy=(5,1), arrowprops=props, fontsize=14, ha='center')
    plt.annotate('Linear', xytext=(2, 0.2), xy=(0,0.5), arrowprops=props, fontsize=14, ha='center')
    plt.annotate('Saturating', xytext=(-3.5, 0.7), xy=(-5,0), arrowprops=props, fontsize=14, ha='center')
    plt.grid(True)
    plt.title(u'我就是我') # 注意以u开头
    plt.axis([-5, 5, -0.2, 1.2])
    
    image.png

    5. 参考资料

    相关文章

      网友评论

          本文标题:Mac系统下matplotlib的中文显示问题解决

          本文链接:https://www.haomeiwen.com/subject/vkfbyxtx.html