显示图片时,中文不显示,可添加下面的设置
import matplotlib.pyplot as plt
方法一:最便捷的
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
未设置"axes.unicode_minus" 产生如下warning:
RuntimeWarning: Glyph 8722 missing from current font. font.set_text(s, 0.0, flags=flags)
方法二:
使用xlabel, ylabel, title 的 fontproperties 指明使用的字体的名称,参考“注”表。
plt.xlabel("x轴")
plt.ylabel("y轴", fontproperties="SimSun") # 宋体
plt.title("标题", fontproperties="SimHei") # 黑体
plt.show()
方法三:
使用font设置,可设置字体大小,可使用 ttf 文件;
font = FontProperties(fname=r'c:\windows\fonts\STKaiti.ttf', size=12) # windows带有的字体文件
plt.xlabel("时间(秒)", fontproperties=font)
plt.ylabel("函数值(X)", fontproperties=font)
plt.title('显示sin,cos曲线', fontproperties=font)
方法四:
使用 rc 参数设定 font 的参数。如可设定字体(font)、加黑(weight), 尺寸(size);
font = {'family':'SimHei', 'weight':'bold', 'size':'12'}
plt.rc('font', **font)
plt.rc('axes', unicode_minus=False)
plt.plot(t, sindata, label='sin(x)正弦')
plt.plot(t, cosdata, label='cos(x^2)余弦')
plt.xlabel("时间(秒)")
plt.ylabel("函数值(X)")
plt.title('显示sin,cos曲线')
注:可使用的字体