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.draw_artist()
La función Axes.draw_artist() en el módulo de ejes de la biblioteca matplotlib se usa para actualizar de manera eficiente los datos de Axes.
Sintaxis: Axes.draw_artist(self, a)
Parámetros: este método acepta los siguientes parámetros.
- a: Este parámetro es el artista a dibujar.
Devoluciones: este método no devuelve ningún valor.
Nota: este método solo se puede usar después de un sorteo inicial que almacena en caché el renderizador.
Los siguientes ejemplos ilustran la función matplotlib.axes.Axes.draw_artist() en matplotlib.axes:
Ejemplo 1:
# Implementation of matplotlib function from random import randint, choice import time import matplotlib.pyplot as plt import matplotlib.patches as mpatches back_color = "black" colors = ['red', 'green', 'blue', 'purple'] width, height = 4, 4 fig, ax = plt.subplots() ax.set(xlim =[0, width], ylim =[0, height]) fig.canvas.draw() def update(): x = randint(0, width - 1) y = randint(0, height - 1) arti = mpatches.Rectangle( (x, y), 1, 1, facecolor = choice(colors), edgecolor = back_color ) ax.add_artist(arti) start = time.time() ax.draw_artist(arti) fig.canvas.blit(ax.bbox) print("Draw at time :", time.time() - start) timer = fig.canvas.new_timer(interval = 1) timer.add_callback(update) timer.start() ax.set_title('matplotlib.axes.Axes.draw_artist()\ function Example') plt.show()
Producción:
Draw at time : 0.37501978874206543 Draw at time : 0.015624046325683594 Draw at time : 0.03127431869506836 Draw at time : 0.015625953674316406 Draw at time : 0.015601396560668945 Draw at time : 0.015614986419677734 ........ so on...
Ejemplo 2:
# Implementation of matplotlib function import matplotlib.pyplot as plt import numpy as np import time fig, ax = plt.subplots() line, = ax.plot(np.random.randn(100)) tstart = time.time() num_plots = 0 fig.canvas.draw() while time.time()-tstart < 5: line.set_ydata(np.random.randn(100)) ax.draw_artist(ax.patch) ax.draw_artist(line) num_plots += 1 ax.set_title('matplotlib.axes.Axes.draw_artist() \ function Example') plt.show()
Producción:
Publicación traducida automáticamente
Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA