Python: Matplotlib 中文解决方案 设置中文字体Python: Matplotlib 中文解决方案 设置中文字体Python: Matplotlib 中文解决方案 设置中文字体Python: Matplotlib 中文解决方案 设置中文字体
  • 首页
  • 博客
  • 书签
  • 文件
  • 分析
  • 登录

Python: Matplotlib 中文解决方案 设置中文字体

发表 admin at 2022年11月14日
类别
  • Python
标签

Matplotlib 默认不支持中文字体

解决方案一:

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

    • 步骤一:下载 SimHei 字体(或者其他的支持中文显示的字体也行)
    • 步骤二:安装字体
      • linux下:拷贝字体到 usr/share/fonts 下:
        sudo cp ~/SimHei.ttf /usr/share/fonts/SimHei.ttf
        
      • windows和mac下:双击安装
    • 步骤三:修改配置文件matplotlibrc
      运行:

      import matplotlib
      
      print(matplotlib.matplotlib_fname())

      结果如下

      /home/vubuntu/PycharmProjects/xxxProject/venv/lib/python3.10/site-packages/matplotlib/mpl-data/matplotlibrc

      编辑matplotlibrc,在终端输入:

      sudo gedit /home/vubuntu/PycharmProjects/xxxProject/venv/lib/python3.10/site-packages/matplotlib/mpl-data/matplotlibrc

      将以下三个地方去掉前面的注释#并修改相应的内容并保存,修改后如下:

      font.family: sans-serif
      font.sans-serif: SimHei, DejaVu Sans, Bitstream Vera Sans, Computer Modern Sans Serif, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
      axes.unicode_minus: False

      注意:如果不是去去掉前面的注释#并修改,而是复制一行再修改,会报错:

      Duplicate key in file PosixPath('/home/vubuntu/PycharmProjects/xxxProject/venv/lib/python3.10/site-packages/matplotlib/mpl-data/matplotlibrc')
    • 步骤四:重启Jupyter Notebook
      实践表明,只删除matplotlib缓存文件:

      ~/.cache/matplotlib

      不重启Jupyter Notebook不生效。

解决方案二:

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

import matplotlib.pyplot as plt

# 设置显示中文字体
plt.rcParams['font.sans-serif'] = ['SimHei'] 
# 字体更改后,会导致坐标轴中的部分字符无法正常显示,此时需要更改axes.unicode_minus参数
# 设置正常显示符号
plt.rcParams['axes.unicode_minus'] = False  

发表回复 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注

类别

  • Cat
  • Python
  • MySQL
  • Django
  • Html/CSS
  • JavaScript
  • Vue
  • RegExp
  • php
  • Practice
  • Virtualization
  • Linux
  • Windows
  • Android
  • NAS
  • Software
  • Hardware
  • Network
  • Router
  • Office
  • WordPress
  • SEO
  • English
  • Games
  • Recipes
  • living
  • Memorandum
  • Essays
  • 未分类

归档

©2015-2023 艾丽卡 Blog support@alaica.com
      ajax-loader