UserWarning: Glyph 8722 (\N{MINUS SIGN}) missing from current font. func(*args)
时间: 2024-02-09 12:07:59 浏览: 802
这是一个 Python 中的 UserWarning 警告,通常出现在使用 Matplotlib 绘制图形时。它表示当前字体库中缺少某个字符,这个字符的 Unicode 编码为 8722,即减号(MINUS SIGN)。
如果你想避免这个警告,可以通过更换 Matplotlib 的字体库来解决。例如,你可以使用以下代码更改字体库:
```python
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']
```
这里将字体库更改为 Arial Unicode MS,它包含了减号字符。你也可以使用其他字体库,只要它包含所需的字符即可。
相关问题
UserWarning: Glyph 8722 (\N{MINUS SIGN}) missing from current font. func(*args)怎么改
这个警告通常出现在使用 Matplotlib 绘制图表时,表示所选字体中没有包含要显示的字符。Glyph 8722 表示的是减号(minus sign),在某些情况下也会显示为负号。这个警告可以通过更换字体或者安装包含该字符的字体来解决。
如果确定要使用当前字体,可以将警告忽略掉。具体方法是在代码中添加以下两行:
```python
import warnings
warnings.filterwarnings("ignore", category=UserWarning)
```
这样就可以忽略掉这个警告了。不过要注意的是,忽略掉警告可能会导致图表的显示不完全或者不准确,所以在实际使用中还是建议解决掉警告。
UserWarning: Glyph 8722 (\N{MINUS SIGN}) missing from current font. func(*args)解决方案代码
这个警告是因为当前的字体中没有包含减号(unicode编码为8722),所以matplotlib无法正确显示减号。解决方案是更换字体或者手动添加缺失的字体。
以下是两种解决方案:
1. 更换字体
可以在绘图之前指定使用包含减号的字体,例如:
```python
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS'] # 指定字体为Arial Unicode MS
plt.plot([1,2,3],[4,5,6])
plt.show()
```
2. 手动添加缺失的字体
可以通过下载包含减号的字体文件并手动添加到matplotlib的字体文件夹中来解决。具体步骤如下:
- 在网上搜索包含减号的字体文件(例如Noto Sans CJK字体),下载对应的字体文件,文件格式通常为.ttf或.otf。
- 在Python中运行以下代码查找matplotlib的字体文件夹路径:
```python
import matplotlib
print(matplotlib.get_configdir())
```
- 将下载的字体文件复制到上一步中查找到的字体文件夹中。
- 在绘图之前指定使用下载的字体,例如:
```python
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Noto Sans CJK'] # 指定字体为下载的字体
plt.plot([1,2,3],[4,5,6])
plt.show()
```
阅读全文