2011-12-15 8 views
55

Estoy buscando una biblioteca gratuita de Java para visualizar algunos datos. Quiero hacer algo similar a las siguientes dos imágenes. ¿Hay alguna posibilidad? Primero pensé en el prefuse, pero esto no se desarrolló desde 2007. Entonces, ¿alguna de sus bibliotecas?Libre biblioteca de visualización de datos de Java?

enter image description here

enter image description here

+1

Como cuestión de hecho, Prefuse se ha movido a [github] (https://github.com/prefuse/Prefuse). Es posible que desee echar otro vistazo. – edwardw

+0

Pero si miro la página de inicio, la última versión es de 2007, sin embargo. – RoflcoptrException

+0

Agregué otra recompensa para encontrar una respuesta para la segunda parte de mi pregunta. Todavía estoy buscando una biblioteca de línea de tiempo. – RoflcoptrException

Respuesta

9

Trate Protovis, que parece ser el sucesor de Prefuse y puede ser una buena opción alternativa. Está escrito en JavaScript, pero está disponible un Java Graphical Toolkit.

D3.js es el sucesor de Protovis en la actualidad. (Recomendado por Protovis.)

+3

Ya he considerado a Protovis, pero esta frase me da un poco de miedo: "Tenga en cuenta que este es un prototipo de investigación. No pretende ser un kit de herramientas listo para producción y hasta el momento no brindamos soporte de software. también falta muchas de las rutinas de la biblioteca familiares para los usuarios de Protovis-Javascript ". – RoflcoptrException

+0

Tienes toda la razón. Esta es mi preocupación también. –

+0

La última versión de Protovis 3.3 fue el 17 de septiembre de 2010. Última actualización: 28 de junio de 2011 - Protovis ya no se encuentra en desarrollo activo. ¡Recomendamos cambiar a D3.js! –

25

¿Usted ha considerado mirando GraphViz?

Graphviz (abreviatura de Graph Visualization Software) es un paquete de herramientas de código abierto iniciado por AT & T Labs Research para dibujar gráficos especificados en las secuencias de comandos del lenguaje DOT. También proporciona bibliotecas para aplicaciones de software para usar las herramientas. Graphviz es software libre bajo licencia de Eclipse Public License.

Puede hacer algunas cosas bastante bien con eso:

enter image description here

enter image description here

enter image description here

+0

Atribuí esta respuesta a la recompensa. Pero gastaré otro para la segunda parte de la pregunta. Todavía estoy buscando una biblioteca de línea de tiempo. – RoflcoptrException

3

Habría que sin duda hacer un montón de personalización, pero Google de las Herramientas de gráficos ofrece mucha flexibilidad y opciones (http://code.google.com/apis/chart/). No he hecho nada tan complicado como las imágenes que pegaste arriba, pero fue bastante fácil configurar varios gráficos usando la API de visualización de Google.

Se podría valer la pena para publicar sus imágenes en el grupo API de visualización de Google (http://groups.google.com/group/google-visualization-api?pli=1) para ver si alguien ha hecho gráficos más complicados como los que hemos propuesto anteriormente utilizando el API de visualización ...

4

Un Otra alternativa es usar el marco JUNG. Si también está buscando bibliotecas basadas en el navegador/Javascript, realice la compra three.js

9

Para el papel línea de tiempo, realmente debería considerar Google Visualization API que contiene un calendario anotadas, ...

+0

¿Has probado este? –

+0

No puedo encontrar un ejemplo de cómo hacer algo como lo que necesito hacer – RoflcoptrException

+0

@Roflcoptr aquí hay un ejemplo de a lo que me refería: http://code.google.com/apis/chart/interactive/docs/gallery /annotatedtimeline.html –

4

Otra biblioteca que podría considerar es JGraph. Funciona principalmente con gráficos, pero puede implementar fácilmente una línea de tiempo como uno. El proyecto se puede encontrar en GitHub https://github.com/jgraph/jgraphx y se actualizó recientemente.

2

Si está buscando explícitamente una biblioteca de swing, ¡ignore esta respuesta! Pero en el mundo de la web, Raphaël y D3.js son mis favoritos. Back-end podría implementarse en Java.

0

Si no te importa usar la solución javascript timeglider es lo que necesitas para la segunda captura de pantalla.

+0

Java! = Javascript – RoflcoptrException

+0

@RoflcoptrException Si está desarrollando una aplicación web o si no le importa utilizar una solución de javascript. He actualizado mi respuesta también, pero parece que no prefieres :) – HRgiger

Cuestiones relacionadas