[pyar] Duda Matplolib alternativa a draw()
Pablo Morales
moralespablogaston en gmail.com
Mie Mar 30 01:57:28 ART 2016
Buenos noches, queria preguntarles si alguno uso una alternativa mas
eficiente para refrescar plots en una figura que no sea con el metodo
draw().
Les cuento como viene la bronca, resulta que uso matplolib para realizar
una figura que se va actualizando dentro de un widget de pyqt.
mas o menos la cuestion viene asi:
matplotlib.backends.backend_qt4agg
fig = Figure(figsize=(30,10), dpi=100)
axes=fig.add_subplot(111, projection='polar')
canvas = FigureCanvas(self.fig)
marcaPlot=axes.scatter(x,y...)
cuando realizo el ploteo,luego llamo a la funcion draw() para
actualizar la grafica con los plots. El problema es que cuando llamo a
draw()
canvas.draw() para actualizar la figura, este metodo tiene muy baja
performance, tarda cerca de 0.2seg en actualizar un plot.
Estoy en busca de una forma de actualizar los plots de una manera mas
eficiente.
Estve buscando y una forma que encotre es usando blit(), lo que hago
es realizar el plot
marcaScatt=axes.scatter(x,y)
y luego le paso el plot a draw_artist()
axes.draw_artist(marcaScatt)
por ultimo uso para actualizar la grafica
canvas.blit(axes.bbox)
Teniendo en cuenta esto, el problema que me surge es poder quitar los
plots de la grafica, ya que no encuentro un metodo remove()
u algo parecido como para remover el plot. Cabe aclarar que graficar
usando este metodo es mucho mas eficiente, estamos
hablando de 0.00376892089844 seg vs los casi 0.2 seg cuando
actualizaba con draw().
Sin mas, si alguno alguna vez trabajo con esto y me tira un centro
agradecido estaría.
Saludos, atte. Pablo Morales.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160330/133cef3e/attachment.html>
Más información sobre la lista de distribución pyar