ubuntu安装matplotlib中文字体
时间: 2025-04-29 20:56:46 浏览: 16
### 配置 Matplotlib 支持中文字体
要在 Ubuntu 上配置 Matplotlib 以支持中文字体,可以按照以下方式操作:
#### 字体安装
为了使 Matplotlib 能够正常显示中文字符,首先需要确保系统中有可用的中文字体。可以选择常见的中文字体如微软雅黑 (Microsoft YaHei),并将其安装到系统的字体目录 `/usr/share/fonts` 中。
可以通过以下命令完成字体的安装过程[^3]:
```bash
sudo cp 待安装字体.ttf /usr/share/fonts/
sudo chmod +r /usr/share/fonts/*.ttf
fc-cache -fv
```
上述命令的作用分别是:将字体文件复制到系统字体目录、赋予读取权限以及刷新字体缓存。
#### 修改 Matplotlib 的字体配置
Matplotlib 使用 `matplotlibrc` 文件来定义默认样式参数,其中包括字体设置。如果希望全局应用某个特定的中文字体,则需调整该文件中的相关内容。然而,在实际操作过程中发现仅仅更改此文件可能不足以解决问题,因为所指定的字体未必会被正确加载至 Matplotlib 内部环境之中[^2]。
因此推荐通过编程手段动态设定所需使用的字体类型。例如利用 Python 脚本显式声明 SimHei 或其他兼容汉字渲染效果较好的字型作为绘图时的文字属性之一[^4]。
以下是具体实现代码示例:
```python
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
font = FontProperties(fname='/path/to/simhei.ttf') # 替换为实际字体路径
plt.figure()
plt.plot([1,2,3], label="测试", fontproperties=font)
plt.legend(prop=font)
plt.show()
```
以上脚本片段展示了如何借助 `FontProperties` 类实例化对象关联外部 TTF 文件资源,并应用于图表标题、轴标签以及其他任何涉及文本输出的地方。
另外值得注意的是,有时即使完成了前述步骤仍可能出现编码异常情况导致乱码现象发生。此时可尝试调用 `mpl.rcParams['axes.unicode_minus'] = False` 来关闭 Unicode 减号的支持从而规避潜在冲突风险[^1]。
### 注意事项
- 确认已成功导入目标字体到操作系统层面;
- 正确指定了绝对地址指向对应字体描述符(.ttf/.otf);
- 如果频繁需要用到某类特殊风格的文字呈现形式的话考虑把自定义偏好保存进个人专属 rcParams 设置当中去简化后续重复劳动强度;
阅读全文
相关推荐
















