matplotlib图例-【老鱼学matplotlib】

图例是啥,直接上图就知道了:

怎么创建上面的图例呢?
很简单,首先在plt.plot()函数中设置label文本属性,然后调用plt.legend()生成图例就可以了,完整的代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 生成x轴上的数据:从-3到3,总共有50个点
x = np.linspace(-1, 1, 50)
# 定义一个线性方程
y1 = 2 * x + 1
# 定义一个二次方程
y2 = x ** 2
plt.plot(x, y2, label="y2")
# 绘制红色的线宽为1虚线的线条
plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--', label="y1")
plt.legend()
# 显示图表
plt.show()

上面是最简单的生成图例的方法,在plt.legend()函数中还有其它的一些属性,我们以一个例子来显示,只要读者能够有些了解就可以了:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 生成x轴上的数据:从-3到3,总共有50个点
x = np.linspace(-1, 1, 50)
# 定义一个线性方程
y1 = 2 * x + 1
# 定义一个二次方程
y2 = x ** 2
# 绘制红色的线宽为1虚线的线条,注意这里p1后面有个逗号
p1, = plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--', label="y1")
p2, = plt.plot(x, y2, label="y2")

# handles用于指定显示哪些图例,labels可以再次重新指定显示图例的标签内容,loc定义图例显示的位置,best会自动寻找不挡住曲线的最佳位置,其余还有'upper right'、'right'等。
plt.legend(handles=[p1, p2], labels=["aaa", "bbb"], loc='best')
# 显示图表
plt.show()

显示图为:

posted @ 2017-12-07 09:47  dreampursuer  阅读(958)  评论(0编辑  收藏  举报