当前位置:   article > 正文

matplotlib---中文显示问题、字体库、图像结构、画布设置_matplotlib显示中文

matplotlib显示中文

1. 中文显示问题

解决方案一:

       下载中文字体(黑体,看准系统版本)

        步骤一:下载 SimHei 字体(或者其他的支持中文显示的字体也行)

        步骤二:安装字体 linux下:拷贝字体到 usr/share/fonts 下:

sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf

        windows和mac下:双击安装

        步骤三:删除~/.matplotlib中的缓存文件

  1. cd ~/.matplotlib
  2. rm -r *

         步骤四:修改配置文件matplotlibrc

vi ~/.matplotlib/matplotlibrc

        将文件内容修改为:

  1. font.family : sans-serif
  2. font.sans-serif : SimHei
  3. axes.unicode_minus : False

解决方案二:

Python脚本中动态设置matplotlibrc,这样也可以避免由于更改配置文件而造成的麻烦,具体代码

如下:

  1. from pylab import mpl
  2. # 设置显示中文字体
  3. mpl.rcParams["font.sans-serif"] = ["SimHei"]

有时候,字体更改后,会导致坐标轴中的部分字符无法正常显示,此时需要更改

axes.unicode_minus参数:

  1. # 设置正常显示符号
  2. mpl.rcParams["axes.unicode_minus"] = False

jupyter中运行时配置参数:

  1. # 如果浏览器不显示图片,就需要加上这句话
  2. %matplotlib inline
  3. # 让图片中可以显示中文
  4. plt.rcParams['font.sans-serif'] = 'SimHei'
  5. # 让图片中可以显示负号
  6. plt.rcParams['axes.unicode_minus'] = False
  7. # 支持svg矢量图
  8. %config Inlinebackend.figure_format = 'svg'

 查看自己电脑上的字体库:

  1. from matplotlib.font_manager import FontManager
  2. fm = FontManager()
  3. my_fonts = set(f.name for f in fm.ttflist)
  4. my_fonts

2. matplotlib的图像结构

3. 画布设置

plt.figure()

  1. # 画布配置
  2. # figsize: 画布大小,宽高
  3. # dpi :分辨率
  4. # facecolor: 背景颜色
  5. fig = plt.figure(figsize=(6, 4), dpi=100, facecolor='#11aa11')
  6. # 绘制正弦曲线
  7. x = np.linspace(0, 2*np.pi)
  8. y = np.sin(x)
  9. plt.plot(x,y)
  10. # 设置网格线
  11. plt.grid()
  12. plt.show()
  13. # 保存图片
  14. fig.savefig('images/2-3.png')

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/423187
推荐阅读
相关标签
  

闽ICP备14008679号