首页 > 其他分享 >解决警告UserWarning: Glyph 38388 (\N{CJK UNIFIED IDEOGRAPH-95F4}) missing from current font. fig.canv

解决警告UserWarning: Glyph 38388 (\N{CJK UNIFIED IDEOGRAPH-95F4}) missing from current font. fig.canv

时间:2023-10-04 12:01:49浏览次数:36  
标签:CJK 中文 plt IDEOGRAPH 38388 字体 unicode rcParams font

这个警告是由于在绘图时使用了当前字体不支持的字符,通常出现在使用非英文字符(比如中文、日文等)时。为了解决这个问题,你可以尝试以下几种方法:

方法一:选择支持中文的字体

在绘图之前,指定一个支持中文的字体。例如,可以使用matplotlib.rcParams来指定字体,示例如下:

import matplotlib.pyplot as plt

# 指定支持中文的字体,例如SimHei或者Microsoft YaHei
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题

# 接下来进行绘图操作
plt.plot(x_data, y_data)
plt.xlabel('中文标签')
plt.ylabel('中文标签')
plt.title('中文标题')
plt.show()

在这个例子中,plt.rcParams['font.sans-serif']用来指定支持中文的字体,plt.rcParams['axes.unicode_minus']用来解决负号显示问题。你可以根据需要选择适合的中文字体。

方法二:使用符合系统的字体

如果你使用的是Jupyter Notebook、Jupyter Lab或者IPython,你可以使用IPython的魔法命令%config来配置字体。示例如下:

%config InlineBackend.figure_format = 'retina'
%config InlineBackend.print_figure_kwargs = {'bbox_inches': None}

import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']  # 或者其他符合系统的字体
plt.rcParams['axes.unicode_minus'] = False

请注意,具体的字体名称可能会因操作系统和安装的字体库而异。如果上述方法不起作用,你可能需要根据你的系统和字体库来选择适当的字体。

如果你使用的是其他绘图库(比如Seaborn),也可以根据相应的方法来设置支持中文的字体。

标签:CJK,中文,plt,IDEOGRAPH,38388,字体,unicode,rcParams,font
From: https://blog.51cto.com/u_16055028/7702558

相关文章