📌  相关文章
📜  Python中的 Matplotlib.axes.Axes.get_legend_handles_labels()

📅  最后修改于: 2022-05-13 01:55:50.927000             🧑  作者: Mango

Python中的 Matplotlib.axes.Axes.get_legend_handles_labels()

Matplotlib是Python中的一个库,它是 NumPy 库的数值数学扩展。 Axes 类包含大部分图形元素:Axis、Tick、Line2D、Text、Polygon 等,并设置坐标系。 Axes 的实例通过回调属性支持回调。

matplotlib.axes.Axes.get_legend_handles_labels()函数

matplotlib 库的轴模块中的Axes.get_legend_handles_labels()函数用于返回图例的句柄和标签。

下面的示例说明了 matplotlib.axes 中的 matplotlib.axes.Axes.get_legend_handles_labels()函数:

示例 1:

# Implementation of matplotlib function  
import matplotlib.pyplot as plt
import numpy as np
     
fig, ax = plt.subplots()
ax.plot([1, 6, 3, 8, 34, 13, 56, 67], color ="green")
  
h, l = ax.get_legend_handles_labels()
# print(h, l)
text ="Legend is present"
if h ==[]:
    text ="No legend present"
else:
    text+="and labels are : "+str(l)
      
ax.text(2.5, 60, text, fontweight ="bold")
fig.suptitle('matplotlib.axes.Axes.get_legend_handles_labels()\
 function Example\n', fontweight ="bold")
fig.canvas.draw()
plt.show()

输出:

示例 2:

# Implementation of matplotlib function
import numpy as np
np.random.seed(19680801)
import matplotlib.pyplot as plt
   
   
fig, ax = plt.subplots()
for color in [ 'tab:green', 'tab:blue', 'tab:orange']:
    n = 70
    x, y = np.random.rand(2, n)
    scale = 1000.0 * np.random.rand(n)
    ax.scatter(x, y, c = color, s = scale, label = color,
               alpha = 0.35)
   
ax.legend()
ax.grid(True)
  
h, l = ax.get_legend_handles_labels()
print(h, l)
text ="    Legend is present"
if h ==[]:
    text ="No legend present"
else:
    text+=" and labels are : \n"+str(l)
      
ax.text(0.15, 0.45, text, fontweight ="bold")
fig.suptitle('matplotlib.axes.Axes.get_legend_handles_labels()\
 function Example\n', fontweight ="bold")
fig.canvas.draw()
plt.show()

输出: