matplotlib如何同时设置英文和中文
时间: 2024-10-18 20:11:54 浏览: 51
Matplotlib是一个流行的Python数据可视化库,它默认的图表标签语言是英文。如果你想在图上同时显示英文标题和中文描述,可以借助matplotlib的`rcParams`设置和一些字体支持。
首先,你需要安装支持中文的字体,比如`SimHei.ttf`或`Microsoft YaHei.ttf`等。然后,你可以通过以下步骤调整:
```python
# 导入必要的模块
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
# 设置全局字体
plt.rcParams['font.sans-serif'] = ['SimHei'] # 中文无衬线字体
plt.rcParams['axes.unicode_minus'] = False # 解决负号中文显示问题
# 创建图形并设置标题
fig, ax = plt.subplots()
ax.set_title('我的英文标题 - 英文Title', fontsize=16)
ax.set_xlabel('中文X轴', fontproperties=FontProperties(fname='SimHei.ttf')) # 使用特定字体
ax.set_ylabel('中文Y轴', fontproperties=FontProperties(fname='SimHei.ttf'))
# 添加中文文本到图表
plt.text(0.5, 0.9, '这里是中文注释', transform=ax.transAxes, fontsize=14,
horizontalalignment='center', verticalalignment='top',
fontproperties=FontProperties(fname='SimHei.ttf'))
# 显示图形
plt.show()
```
在这个例子中,`font.sans-serif`设置了无衬线字体为中文,而`xlabel`和`ylabel`以及`text`函数的`fontproperties`参数则指定了具体的字体文件路径。
阅读全文