在使用matplotlib.font_manager绘图时如何将数据源(csv表)里面的gb2312编码的中文正确地显示出来
时间: 2024-01-21 19:19:54 浏览: 71
让Silverlight支持GB2312中文编码
4星 · 用户满意度95%
在使用matplotlib绘图时,如果要正确显示中文,需要先设置字体。可以通过以下代码设置字体:
```python
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
# 设置字体
font = FontProperties(fname=r"C:\Windows\Fonts\simhei.ttf", size=14)
# 绘图
plt.plot(x, y)
plt.xlabel('日期', fontproperties=font)
plt.ylabel('销售额', fontproperties=font)
plt.title('销售额变化', fontproperties=font)
plt.show()
```
其中,`fname`参数指定字体文件路径,`size`参数指定字体大小。在Windows系统下,常见的中文字体文件为`simhei.ttf`、`simsun.ttc`等。
如果数据源中的中文编码格式为`gb2312`,需要在读取数据时指定编码格式,例如:
```python
import pandas as pd
df = pd.read_csv('data.csv', encoding='gb2312')
```
然后再将中文作为参数传递给绘图函数,并使用`fontproperties`参数指定字体即可正确显示中文。
阅读全文