signed

QiShunwang

“诚信为本、客户至上”

matplotlib中文乱码和保存图像时负号显示方块的问题

2021/4/26 17:25:32   来源:

matplotlib中文乱码和保存图像时负号显示方块的问题

##在使用matplotlib.pyplot库画图时,如果给x轴和y轴或者图像标题定义中文名在输出图像时会显示乱码,这一问题需要添加参数来解决

'''
画两个简单的图像来作为例子
'''
x = np.linspace(0, 10, 1000)  # linspace函数产生位于指定两点之间的矢量
y = np.sin(x) + 1
z = np.cos(x**2) + 1

plt.rcParams['font.sans-serif'] = ['SimHei']  # 解决命名时中文乱码的问题
plt.rcParams['axes.unicode_minus'] = False  # 解决保存图像负号显示为方块的问题

plt.figure(figsize=(8, 4))  # 设置图像的大小
plt.plot(x, y, label='$\sinx+1$', color='red', linewidth=2)  # 定义两个图像的各项参数
plt.plot(x, z, 'b--', label='$\cosx^2+1$')
plt.xlabel('时间/单位:秒(s)')  # x轴和y轴的名称
plt.ylabel('速度')
plt.title('A Simple Example')  # 图的名称
plt.ylim(0, 2.2)  # 显示y轴的范围
plt.legend()  # 显示图例
plt.show()

运行结果: