Python学习(1)---matplotlib中常用中文字体的对应名称

这篇博客详细介绍了在Python绘图时如何选择和设置中文字体,包括宋体、华文琥珀、楷体、华文细黑等多个常用字体的ttf代码和设置方法,帮助读者在图表中正确显示中文内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python绘图标注图时需要选择自己想要的中文字体,现有的中文字体对照表如下:

中文字体名称ttf代码设置
宋体simsunSimSun
华文琥珀STHUPOSTHupo
楷体simkaiKaiTi
华文细黑STXIHEISTXihei
仿宋_GB2312仿宋_GB2312FangSong_GB2312
楷体_GB2312楷体_GB2312KaiTi_GB2312
华文楷体STKAITISTKaiti
华文彩云STCAIYUNSTCaiyun
微软正黑msjhlJhengHei
华文中宋华文中宋STZhongsong
方正姚体FZYTKFZYaoTi
方正卡通简体方正卡通简体FZKaTong-M195
黑体simhiSimHei
方正粗黑宋简体方正粗黑宋简体FZCuHeiSongS-B-GB
等线DengDengXian
微软雅黑msyhYaHei
方正舒体FZSTKFZShuTi
华文新魏STXINWEISTXinwei
幼圆STMYOUYouYuan
隶书STMLILiSu
仿宋simfangFangSong
华文仿宋STFANGSOSTFangSong
方正小标宋简体FZXBSJWFZXiaoBiaoSong-B055

<think>嗯,用户在使用PythonMatplotlib库画图时遇到了中文显示的问题,想要找到解决方案。首先,我需要回忆一下常见的解决方法。根据之前的引用资料,我记得有几个关键点:可能需要修改字体配置文件,或者通过代码设置字体参数。 首先,用户可能是在不同的操作系统上遇到这个问题,比如Mac或者Windows。不同的系统可能需要不同的处理方式。比如在Mac下,引用[2]和[4]提到了使用特定的字体,比如'Arial Unicode MS'。而引用[3]则提到了两种方法,一种是设置matplotlib的rc参数,另一种是直接指定字体名称。 接下来,我需要考虑用户是否正确设置了字体路径,或者是否系统中存在所需的字体。有时候,用户可能需要下载中文字体并添加到Matplotlib字体库中。例如,引用[1]提到可以通过matplotlib.matplotlib_fname()找到配置文件的位置,然后用户需要将字体文件复制到相应的目录,并更新缓存。 另外,用户可能还遇到了负号显示的问题,这在引用[3]中提到过,需要额外设置参数,比如plt.rcParams['axes.unicode_minus'] = False。这也是需要注意的地方。 然后,我需要组织这些信息,分步骤解释解决方案。首先建议用户检查当前配置,找到字体文件夹的位置,然后下载并安装中文字体,接着修改配置文件或者直接在代码中设置字体参数。同时,提醒用户清除缓存,必要时重启Python内核。 可能还需要区分不同的操作系统,比如Mac和Windows在字体名称和路径上的差异。例如,在Windows中常用中文字体是SimHei,而Mac可能需要使用'Arial Unicode MS'或者其他支持中文的字体。 此外,用户可能对代码示例有需求,所以需要提供具体的代码片段,展示如何设置字体以及如何处理负号显示问题。同时,要提醒用户如果直接修改配置文件,可能需要管理员权限,或者在虚拟环境中操作时的注意事项。 最后,生成相关问题的时候,要考虑用户可能进一步的问题,比如如何处理其他语言的显示,或者如何批量修改图表样式,以及动态调整字体等高级用法。</think>### Python Matplotlib 中文显示解决方案 以下是分步解决方案,适用于不同操作系统和场景: --- #### **1. 检查当前Matplotlib配置** 首先定位Matplotlib字体配置文件路径: ```python import matplotlib print(matplotlib.matplotlib_fname()) # 输出配置文件路径,例如:/.../matplotlib/mpl-data/matplotlibrc [^1] ``` --- #### **2. 安装中文字体** - **下载字体文件**:从系统或网络获取中文字体(如`SimHei`、`Microsoft YaHei`、`Arial Unicode MS`等) - **复制字体Matplotlib字体目录**: ```python print(matplotlib.get_cachedir()) # 查看字体缓存目录 ``` 将字体文件(.ttf)复制到以下路径: ``` {matplotlib安装路径}/mpl-data/fonts/ttf/ ``` --- #### **3. 修改配置文件或代码设置** **方法一:直接修改代码(推荐)** ```python import matplotlib.pyplot as plt # 设置中文字体(根据系统选择) plt.rcParams['font.sans-serif'] = ['SimHei'] # Windows plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] # macOS [^4] # 解决负号显示问题 plt.rcParams['axes.unicode_minus'] = False # 测试绘图 plt.title('中文标题示例') plt.xlabel('x轴') plt.ylabel('y轴') plt.plot([1,2,3], [4,5,6]) plt.show() ``` **方法二:修改配置文件** 1. 打开步骤1中获取的`matplotlibrc`文件 2. 修改以下参数: ```properties font.family : sans-serif font.sans-serif : SimHei, DejaVu Sans, Arial Unicode MS # 添加中文字体到列表首部[^2] axes.unicode_minus : False # 解决负号问题[^3] ``` --- #### **4. 清除缓存并重启** 删除字体缓存目录(通过`matplotlib.get_cachedir()`获取路径),或运行以下代码: ```python import matplotlib matplotlib.font_manager._rebuild() ``` --- #### **注意事项** - 虚拟环境中需在对应环境下操作 - 若使用Jupyter Notebook,需重启内核 - Linux系统需安装`fonts-wqy-microhei`等中文字体---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值