这个警告是由于在绘图时使用了当前字体不支持的字符,通常出现在使用非英文字符(比如中文、日文等)时。为了解决这个问题,你可以尝试以下几种方法:
方法一:选择支持中文的字体
在绘图之前,指定一个支持中文的字体。例如,可以使用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