Matplotlib练习4:legend图例

为图像添加图例

#保存到a1,a2
a1, = plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
#生成第二个图像y2,设置长2,宽2
a2, = plt.plot(x, y2, color='blue', linewidth=2.0, linestyle='-')
#为图像添加图例,loc='best'寻找较好的位置
plt.legend(handles=[a1, a2], labels=['test1', 'test2'], loc='best')

效果图

#为图像添加图例,loc='lower right'右下的位置
plt.legend(handles=[a1, a2], labels=['test1', 'test2'], loc='lower right')

完整程序

import matplotlib.pyplot as plt
import numpy as np

#numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
#在指定的间隔内返回均匀间隔的数字。
x = np.linspace(-1, 1, 100)
y1 = 2*x + 1
y2 = x**2
#生成第一个图像y1
plt.xlim((-1, 2))
plt.ylim((-2, 3))
plt.xlabel('X Axis')
plt.ylabel('Y Axis')
#保存到a1,a2
a1, = plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
#生成第二个图像y2,设置长2,宽2
a2, = plt.plot(x, y2, color='blue', linewidth=2.0, linestyle='-')
#为图像添加图例,loc='best'寻找较好的位置
plt.legend(handles=[a1, a2], labels=['test1', 'test2'], loc='best')
#生成-2~2之间的11个点
new_ticks = np.linspace(-2, 2, 11)
#打印出-2~2之间的11个点
print(new_ticks)

#将生成的11个点导入到x轴上
plt.xticks(new_ticks)
#将y轴对应的数字换为对应的描述
plt.yticks([-1, 0, 1, 2, 3],
           ['level1', 'level2', 'level3', 'level4', 'level5'])
plt.show()

猜你喜欢

转载自blog.csdn.net/weixin_48524215/article/details/111795489