Matplotlib.axes.Axes.findobj() en Python

Matplotlib es una biblioteca en Python y es una extensión matemática numérica para la biblioteca NumPy. La clase Axes contiene la mayoría de los elementos de la figura: Axis, Tick, Line2D, Text, Polygon, etc., y establece el sistema de coordenadas. Y las instancias de Axes admiten devoluciones de llamada a través de un atributo de devoluciones de llamada.

función matplotlib.axes.Axes.findobj()

La función Axes.findobj() en el módulo de ejes de la biblioteca matplotlib se usa para encontrar objetos de artistas.

Sintaxis: Axes.findobj(self, match=Ninguno, include_self=True)

Parámetros: este método acepta los siguientes parámetros.

  • match : Este parámetro es el criterio de filtrado de las coincidencias. Su valor predeterminado es Ninguno.
  • include_self : este parámetro se incluye a sí mismo en la lista para verificar si hay una coincidencia.

Devoluciones: este método devuelve artistas (lista de artistas).

Los siguientes ejemplos ilustran la función matplotlib.axes.Axes.findobj() en matplotlib.axes:

Ejemplo 1:

# Implementation of matplotlib function
import matplotlib.pyplot as plt
from matplotlib.lines import Line2D
import numpy as np
from numpy.random import rand
    
  
fig, ax2 = plt.subplots()
    
ax2.bar(range(10), rand(10), picker = True)
  
for label in ax2.get_xticklabels(): 
    label.set_picker(True)
  
def onpick1(event):
      
    if isinstance(event.artist, Line2D):
        thisline = event.artist
        xdata = thisline.get_xdata()
        ydata = thisline.get_ydata()
        ind = event.ind
        print('onpick1 line:',
              np.column_stack([xdata[ind],
                               ydata[ind]]))
          
    elif isinstance(event.artist, Rectangle):
        patch = event.artist
        print('onpick1 patch:', patch.get_path())
          
    elif isinstance(event.artist, Text):
        text = event.artist
        print('onpick1 text:', text.get_text())
  
print("Value return : \n", *list(ax2.findobj()), sep ="\n")
  
fig.suptitle('matplotlib.axes.Axes.findobj() function Example',
             fontweight ="bold")
  
plt.show()

Producción:

 

Value return : 

Rectangle(xy=(-0.4, 0), width=0.8, height=0.815228, angle=0)
Rectangle(xy=(0.6, 0), width=0.8, height=0.655121, angle=0)
Rectangle(xy=(1.6, 0), width=0.8, height=0.225002, angle=0)
Rectangle(xy=(2.6, 0), width=0.8, height=0.639457, angle=0)
Rectangle(xy=(3.6, 0), width=0.8, height=0.463923, angle=0)
Rectangle(xy=(4.6, 0), width=0.8, height=0.865994, angle=0)
Rectangle(xy=(5.6, 0), width=0.8, height=0.269864, angle=0)
Rectangle(xy=(6.6, 0), width=0.8, height=0.834427, angle=0)
Rectangle(xy=(7.6, 0), width=0.8, height=0.79638, angle=0)
Rectangle(xy=(8.6, 0), width=0.8, height=0.564809, angle=0)
Spine
Spine
Spine
Spine
Text(0.5, 0, '')
Text(1, 0, '')
Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

XAxis(80.0, 52.8)
Text(0, 0.5, '')
Text(0, 0.5, '')
Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

YAxis(80.0, 52.8)
Text(0.5, 1.0, '')
Text(0.0, 1.0, '')
Text(1.0, 1.0, '')
Rectangle(xy=(0, 0), width=1, height=1, angle=0)
AxesSubplot(0.125, 0.11;0.775x0.77)

Ejemplo 2:

# Implementation of matplotlib function
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
  
  
fig, ax = plt.subplots()
x, y = 10 * np.random.rand(2, 1000)
ax.plot(x, y, 'go', alpha = 0.2)
  
circ = mpatches.Circle((0.5, 0.5), 0.25,
                       transform = ax.transAxes,
                       facecolor ='blue', 
                       alpha = 0.75)
ax.add_patch(circ)
  
print("Value return : \n", *list(ax.findobj()),
      sep ="\n")
  
fig.suptitle('matplotlib.axes.Axes.findobj()\
function Example', fontweight ="bold")
  
plt.show()

Producción:

 

Value return : 

Circle(xy=(0.5, 0.5), radius=0.25)
Line2D(_line0)
Spine
Spine
Spine
Spine
Text(0.5, 0, '')
Text(1, 0, '')
Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

Line2D()
Line2D()
Line2D((0, 0), (0, 1))
Text(0, 0, '')
Text(0, 1, '')

XAxis(80.0, 52.8)
Text(0, 0.5, '')
Text(0, 0.5, '')
Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

Line2D()
Line2D()
Line2D((0, 0), (1, 0))
Text(0, 0, '')
Text(1, 0, '')

YAxis(80.0, 52.8)
Text(0.5, 1.0, '')
Text(0.0, 1.0, '')
Text(1.0, 1.0, '')
Rectangle(xy=(0, 0), width=1, height=1, angle=0)
AxesSubplot(0.125, 0.11;0.775x0.77)

Publicación traducida automáticamente

Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *