[pygtk] distintos tipos de gráficas
Inigo Aldazabal Mensa
inigo_aldazabal en ehu.es
Mie Jul 23 13:09:09 CEST 2008
El Miércoles, 23 de Julio de 2008 12:28, Beni escribió:
> 2008/7/23 Inigo Aldazabal Mensa <inigo_aldazabal en ehu.es>:
> > El Martes, 22 de Julio de 2008 18:05, Beni escribió:
> > > 2008/7/22 Inigo Aldazabal Mensa <inigo_aldazabal en ehu.es>:
> > > > DrawingArea es para dibujar dentro de ella, como con el gimp por
> > > > ejemplo. Una opción muy sencilla es generar la imagen de otra
> > > > forma y luego colocarla en un widget de imagen.
> > > >
> > > > Un documento bastante bueno sobre cómo hacer una aplicación
> > > > sencilla que haga exactamente esto es "Introduction to GUI
> > > > building with Glade"[1]. En concreto usa gnuplot para generar la
> > > > imagen, pero es lo de menos.
> > > >
> > > > Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o
> > > > alguna de las librerías que se mencionaban hace pocos días en la
> > > > lista, pyx[4], pyxplot[5], Pycha[6], que parece muy sencillo y con
> > > > muy buena pinta, matplotlib[7], rrdtool[8], etc. En fin,
> > > > dependiendo de qué tipo de gráficas necesites, busca el mas
> > > > adecuado.
> > > >
> > > > Algunos, como el matplotlib, los puedes embeber directamente en la
> > > > aplicación, en vez de generar imágenes externas, pero es mas
> > > > complicado, claro.
> > > >
> > > > Un saludo
> > > >
> > > > [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/
> > > > [2] http://www.gnuplot.info/
> > > > [3] http://gnuplot-py.sourceforge.net/
> > > > [4] http://pyx.sourceforge.net/index
> > > > [5] http://www.pyxplot.org.uk/
> > > > [6] http://www.lorenzogil.com/projects/pycha
> > > > [7] http://matplotlib.sourceforge.net/
> > > > [8] http://oss.oetiker.ch/rrdtool/
>
> Muy bueno Inigo. Gracias por todos esos enlaces.
>
> Básicamente lo que quiero es poder hacer graficas e interacturar con
> ellas. Por ejemplo seleccionar un pico de una función y que realice
> ciertos calculos. Lo del svg lo sugerí por que vi este comportamiento
> con la librería dojo que renderiza a svg y queda bastante impresionante.
>
> Pero viendo la documentación que me has dado y más concretamente el
> mathplotlib, parece que puedes interactuar con los gráficos que generas.
> Que es el comportamiento que búscaba. Así que muchas gracias seguiré
> echandole un vistazo a todo esto.
Con matplotlib sí interaccionas, en el sentido que el gui que tiene el
propio sistema lo embebes en tu aplicación, y puedes usar también la barra
de herramientas que tiene, sin hacer nada. De esa forma puedes obtener
coordenadas de un cierto punto, ampliar una cierta parte de la gráfica,
mover los ejes y cosas así de forma "automágica".
Yo por ejemplo hice una aplicación de postprocesado que realizaba una
animación de unos resultados y podías pararla pinchando en la ventana de
la gráfica, hacer zoom, guardar la imagen (con la propia barra de
matplotlib, claro), etc.
Lo de la animación fue un poco lío sobre todo en los detalles, pero si tu
gráfica es estática esta tirado. A mi me fue muy bien para empezar este
tutorial[1]. También creo que algo había en los ejemplos de matplotlib.
http://www.serpia.org/blog/2007/nov/03/matplotlib-and-pygtk-app/
Un saludo.
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es