出现findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans. findfont: Generic family 'sans-serif' not found because none of the following families were found: Arial Unicode MS
时间: 2023-12-28 18:23:19 浏览: 466
这个错误信息通常是由于 matplotlib 在绘图时需要使用特定的字体,但是当前系统中没有找到这个字体。可以尝试安装 Arial Unicode MS 字体,或者在绘图时指定其他可用的字体。你可以尝试以下两种方法:
1. 安装 Arial Unicode MS 字体
- Windows 系统:可以从 Microsoft 官网下载并安装 Arial Unicode MS 字体。
- Linux 系统:可以使用以下命令安装 Arial Unicode MS 字体:
```
sudo apt-get install ttf-mscorefonts-installer
```
2. 在绘图时指定其他可用的字体
在绘图时,可以使用 `matplotlib.rcParams` 来设置全局字体,或者使用 `fontname` 参数来指定单个文本或标签的字体。例如:
```python
import matplotlib.pyplot as plt
# 设置全局字体
plt.rcParams['font.family'] = 'Arial Unicode MS'
# 绘制图形
plt.plot([1, 2, 3], [4, 5, 6])
plt.xlabel('X 轴标签', fontname='Arial')
plt.ylabel('Y 轴标签', fontname='Arial')
plt.show()
```
在上面的代码中,我们设置了全局字体为 Arial Unicode MS,同时在 X 轴和 Y 轴的标签中分别指定了 Arial 字体。你可以根据自己的需要更改字体名称。
阅读全文