matplotlib直接支持中文标题的方法

使matplotlib直接支持中文标题的方法有很多,可以通过代码导入一些字体库,设置一些字体的属性,但那都会使代码多一些重复的导入操作这里讲一种一次配置,永久解决的办法。

1 找到matplotlib配置文件的绝对路径

import matplotlib
matplotlib.matplotlib_fname() #将会获得matplotlib配置文件所在的绝对路径
'J:\\Anancond\\lib\\site-packages\\matplotlib\\mpl-data\\matplotlibrc'

获得以上的绝对路径,但我们进入到J:\Anancond\lib\site-packages\matplotlib\mpl-data\,定位到
font文件夹下的ttf文件夹。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
进入到ttf文件夹即可。

2 将系统自带的一种中文复制到ttf文件夹中

字体英文名
微软雅黑Microsoft YaHei
楷体KaiTi
宋体SimSun
新宋体NSimSun

C:\Windows\Fonts中查找以上任意一种字体样式,并复制到之前的fft,并记住对应的英文名,这里我选择的是微软雅黑

3 配置matplotlibrc文件

再次进入之前获取的配置文件的绝对路径:J:\Anancond\lib\site-packages\matplotlib\mpl-data\,右键以记事本的方式打开它。

  1. 用Ctrl+F快速查找#font.sans-serif,大约在文件的210行,在:后添加字体对应的英文名,如Microsoft YaHei,并去掉开头的注释符号#。
    在这里插入图片描述
  2. 用Ctrl+F快速查找#axes.unicode_minus,大约在文件的329行,将:True改为False,并去掉开头的注释符号#
    在这里插入图片描述

4 清除matplotlib在C盘的缓存文件

import matplotlib
matplotlib.get_cachedir()#获取matplotlib缓存文件夹的绝对路径
'C:\\Users\\12393\\.matplotlib'

如我的路径为'C:\Users\12393\.matplotlib,进入到这条绝对路径,并删除里面的全部缓存文件,如果绝得不放心,怕删错,可以先将它剪切到桌面。最后重启python编辑器,现在你的matplotlib库就永久支持中文标题了
在这里插入图片描述

`matplotlib` 是一个强大的 Python 数据可视化库,如果想要在绘制图表时显示中文字符,首先需要安装支持中文的字体。以下是安装步骤: 1. **确认系统已有基本字体**:确保你的系统已经内置了一些基础的字体,如宋体、黑体等。Windows 系统通常自带简体中文支持。 2. **下载额外字体**:推荐安装像 `SimHei.ttf`, `SimSun.ttf`, 或 `Microsoft YaHei` 这样的中文专用字体。可以在网上搜索并从可靠的源下载。 3. **添加字体到系统路径**:将下载的字体文件复制到系统可以找到的目录,例如 Windows 的 `%WINDIR%\Fonts` 目录下,或者 Linux/Mac 的 `/usr/share/fonts/truetype/` 目录(具体路径可能会因系统而异)。 4. **配置 matplotlib**:在创建 `Figure` 或 `Axes` 之前,你可以设置全局字体,以便所有绘图都使用这个字体。使用 `rcParams` 设置字体,如下所示: ```python import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties # 设置默认字体为 SimHei font = FontProperties(fname=r'/path/to/your/SimHei.ttf') # 替换为实际路径 plt.rcParams['font.sans-serif'] = [font.get_name()] plt.rcParams['axes.unicode_minus'] = False # 解决负号显示问题 ``` 5. **测试绘图**:现在你就可以创建包含中文标题、标签的图表了。记得在字符串中直接使用中文字符即可。 如果你已经在上述步骤中进行了设置,但仍无法显示中文,可能是其他因素导致的,比如编码问题,可以检查你的文本是如何传递给 `plt.xlabel()`、`plt.ylabel()` 等函数的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值