2009-05-03 18 views
8

Tengo un gran conjunto de datos de tuplas que contiene (hora del evento, latitud, longitud) que necesito visualizar. Esperaba generar una trama xy similar a la de una película, pero me preguntaba si alguien tiene una mejor idea o si hay una manera fácil de hacerlo en Python.Trazado científico en Python

Gracias de antemano por la ayuda, --Leo

Respuesta

16

consiguen matplotlib

+0

Pensé que solo hacía diagramas estáticos.¿Hay alguna manera de hacer películas de una serie de tramas? – user100046

+0

No estoy seguro de si esto es lo suficientemente parecido a lo que está buscando, pero these examples le ofrece una representación que se actualiza constantemente en un marco wx. Sospecho que sería útil saber exactamente qué tipo de salida animada estás buscando. – esm

+1

Erm, no estoy seguro de qué pasó con ese enlace. Pruebe este: http://eli.thegreenplace.net/2008/08/01/matplotlib-with-wxpython-guis/ – esm

0

que han tenido un éxito razonable con aplicaciones Python generando SVG con características de animación incrustados, pero esto era con un conjunto más pequeño de elementos de lo que probablemente tengas Por ejemplo, si sus datos se refieren a un evento sísmico, muestre un círculo que aparezca cuando sucedió el evento y que crezca en tamaño coincidiendo con la magnitud del evento. Un indicador de movimiento sobre una línea de tiempo es realmente simple de agregar.

Kaleidoscope (Opera, otros tal vez, Safari no) muestra un montón de piezas que se mueven alrededor y me pareció inspirador. Muchos otros buenos contenidos tutoriales de SVG en el sitio también.

0

Es posible que desee ver en PyQwt. Es una biblioteca de trazado que funciona con Qt/PyQt.

Varios de los ejemplos PyQwt (en el directorio qt4examples) muestran cómo crear "movimiento" parcelas/dinámicamente cambiantes - mira CPUplot.py, MapDemo.py, DataDemo.py.

+0

PyQwt es agradable pero me dio tantos problemas (de compilación) en Windows y Mac que terminé usando matplotlib –

2

de Enthought Chaco está diseñado para los gráficos interactivos/actualización. la API y tal toma un poco de tiempo para acostumbrarse, pero una vez que estás allí es un marco fantástico para trabajar.

8

La opción más fácil es matplotlib. Dos soluciones particulares que podrían funcionar para usted son:

1) Se puede generar una serie de parcelas, cada una instantánea en un momento dado. Estos pueden mostrarse como un diagrama dinámico en matplotlib, donde los ejes permanecen iguales y los datos se mueven; o puede guardar la serie de gráficos en archivos separados y luego combinarlos para hacer una película (usando una aplicación por separado). Hay una serie de ejemplos en los ejemplos oficiales para hacer estas cosas.

2) Un gráfico de dispersión simple, donde los colores de los círculos cambia con el tiempo podría funcionar bien para sus datos. Esto es súper fácil. Ver this, por ejemplo, que produce esta figura alt text http://matplotlib.sourceforge.net/plot_directive/mpl_examples/pylab_examples/ellipse_collection.hires.png