[pyar] Duda Matplolib alternativa a draw()
Pablo Morales
moralespablogaston en gmail.com
Mie Mar 30 10:25:06 ART 2016
Como me comentaste de que scatter es lento a comparacion con plot, en
realidad el problema es el draw() que es extremadamente lento. con plot
sigo con el mismo problema.
El 30 de marzo de 2016, 2:38, Kiko <kikocorreoso en gmail.com> escribió:
>
>
> El 30 de marzo de 2016, 6:57, Pablo Morales <moralespablogaston en gmail.com>
> escribió:
>
>> 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...)
>>
>> En general, scatter es lento. Prueba a hacer lo mismo con plot, i.e.:
>
> marcaPlot = axes.plot(x, y, 'o',...)
>
> y nos cuentas.
>
> Unas alternativas a gráficos 'en vivo' con matplotlib sería usando PyQwt,
> glumpy, bokeh,...
>
>
>> 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.
>>
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20160330/099f3d25/attachment-0001.html>
Más información sobre la lista de distribución pyar