欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

显示图例(legend)

程序员文章站 2022-03-20 18:03:23
...

原博客地址

loc(设置图例显示的位置)

'best'         : 0, (only implemented for axes legends)(自适应方式)
'upper right'  : 1,
'upper left'   : 2,
'lower left'   : 3,
'lower right'  : 4,
'right'        : 5,
'center left'  : 6,
'center right' : 7,
'lower center' : 8,
'upper center' : 9,
'center'       : 10,

ncol(设置列的数量,使显示扁平化,当要表示的线段特别多的时候会有用)

 

 

使用pyplot的方式

#!/usr/bin/python
#coding: utf-8
 
import numpy as np 
import matplotlib.pyplot as plt 
 
x = np.arange(1, 11, 1)
 
# plt.plot(x, x * 2, label = "First")
# plt.plot(x, x * 3, label = "Second")
# plt.plot(x, x * 4, label = "Third")
 
# # loc 设置显示的位置,0是自适应
# # ncol 设置显示的列数
# plt.legend(loc = 0, ncol = 2)
 
# 也可以这样指定label
label = ["First", "Second", "Third"]
plt.plot(x, x * 2)
plt.plot(x, x * 3)
plt.plot(x, x * 4)
plt.legend(label, loc = 0, ncol = 2)
plt.show()

使用面向对象的方式

#!/usr/bin/python
#coding: utf-8
 
import numpy as np 
import matplotlib.pyplot as plt 
 
x = np.arange(1, 11, 1)
 
fig = plt.figure()
ax = fig.add_subplot(111)
 
# 面向对象的方式中有三种显示label的方法
 
# # 第一种
# # l后面不加逗号会出错,一定要注意
# l, = ax.plot(x, x * 2)
# l.set_label("Demo")
# ax.legend(loc = 0)
 
# 第二种
# ax.plot(x, x * 2, label = "Demo")
# ax.legend(loc = 0)
 
# 第三种
ax.plot(x, x * 2)
ax.legend(['Demo'], loc = 0)
 
 
plt.show()