¿Hay alguna decente libre Java Data plotting bibliotecas por ahí? [cerrado]


En un proyecto Java reciente, necesitábamos una utilidad gratuita de trazado de datos en tiempo real basada en Java. Después de mucha búsqueda, encontramos esta herramienta llamada Scientific Graphics Toolkit o SGT de NOAA. Parecía bastante robusto, pero descubrimos que no era terriblemente configurable. O al menos no lo suficientemente configurable para satisfacer nuestras necesidades. Terminamos excavando muy profundamente en el código Java e ingeniería inversa del código y cambiándolo todo para hacer que la herramienta de trazado se vea y actúe de la manera queríamos que se viera y actuara. Por supuesto, esto eliminó cualquier posibilidad de futuras actualizaciones de NOAA.

Entonces, ¿qué herramientas o bibliotecas gratuitas o baratas de trazado de datos basadas en Java utiliza?

Seguimiento: Gracias por las sugerencias de JFreeChart. Revisé su sitio web y parece una utilidad de gráficos y gráficos de datos muy agradable. Debería haber dejado claro en mi pregunta original que estaba buscando específicamente para trazar datos en tiempo real. Corregí mi pregunta anterior para dejar claro ese punto. Parece que El soporte de JFreeChart para datos en vivo es marginal en el mejor de los casos, aunque. ¿Alguna otra sugerencia?

Author: Brian Tompsett - 汤莱恩, 2008-08-09

16 answers

He tenido éxito usando JFreeChart en múltiples proyectos. Es muy configurable. JFreeChart es de código abierto, pero cobran por la guía para desarrolladores . Si estás haciendo algo simple, el código de ejemplo es probablemente lo suficientemente bueno. De lo contrario, 5 50 para la guía del desarrollador es una muy buena ganga.

Con respecto a los datos "en tiempo real", también he utilizado JFreeChart para este tipo de aplicaciones. Desafortunadamente, tuve que crear algunos modelos de datos personalizados con mecanismos de sincronización adecuados para evitar condiciones de carrera. Sin embargo, no fue terriblemente difícil y JFreeChart todavía sería mi primera opción. Sin embargo, como sugiere el FAQ, JFreeChart podría no darle el mejor rendimiento si eso es una gran preocupación.

 17
Author: Will,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-09 20:46:36

Me encontré con un problema similar (mostrar datos de actualización rápida para fines de ingeniería), y estoy usando JChart2D. Es bastante minimalista y tiene algunas peculiaridades, pero parece bastante rápido: estoy ejecutando una prueba de velocidad de referencia donde está agregando 2331 puntos por segundo (trazas 333x7) a un gráfico de tira y utiliza el 1% de la CPU en mi Pentium 4 de 3GHz.

 3
Author: Jason S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-05-14 14:09:08

Live Graph soporta renderizado en tiempo real.

 2
Author: Jacek Ławrynowicz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-02-17 08:33:32

Estoy usando GRAL para el trazado en tiempo real. Es una biblioteca Java LGPL. Aunque no es tan potente como JFreeChart, tiene una API más agradable. Tengo una trama en marcha en muy poco tiempo. También envían un ejemplo de trazado en tiempo real.

 2
Author: Rick,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-24 15:52:39

Encontré esta pregunta cuando estaba buscando en Google bibliotecas de gráficos de código abierto para java. No estaba muy contento con las respuestas publicadas aquí, así que investigué un poco más sobre el tema. Aunque esta pregunta se ha publicado en 2008, esto todavía podría ser interesante para alguien.

Aquí hay una lista de Herramientas de Gráficos e Informes de Código Abierto en Java

 1
Author: kmera,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-01-07 13:05:11

Http://autoplot.org / permite actualizaciones en tiempo real y se puede utilizar para crear muchos tipos de parcelas científicas.

Para actualizar la gráfica, especifique la URL de un archivo de datos y luego agregue &filePollUpdates=1&tail=100. Ver el ejemplo en http://autoplot.org/cookbook#Loading_Data

 1
Author: Bob Weigel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-06-29 16:09:58

Waterloo Scientific Graphics es un nuevo proyecto LGPL. Los objetos de datos son observables y podrían actualizarse en un escenario de trazado en tiempo real. Para más detalles, véase http://waterloo.sourceforge.net /

Algunas capturas de pantalla:

http://waterloo.sourceforge.net/images/AnatomyZ.png

http://waterloo.sourceforge.net/images/contour.png

http://waterloo.sourceforge.net/images/errorbar.png

 1
Author: user1610348,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-12-08 22:22:20

Plot4j también soporta el trazado en tiempo real!

 1
Author: Alessandro Brunelli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-11-26 00:17:07

Usé JFreeChart ( http://www.jfree.org/jfreechart / ) en un proyecto anterior. Tiene algunas muy buenas capacidades integradas, y el diseño era MUY extensible, por lo que siempre podía rodar su propia extensión más tarde si necesitaba alguna anotación de gráfico personalizada o quería un eje para renderizar de manera diferente, o lo que sea. Definitivamente vale la pena comprobarlo.

 0
Author: Chris Farmer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-08-09 05:52:00

Compruebe ILOG JViews - tienen un montón de cosas y algo podría adaptarse a sus necesidades. Todos ellos son extremadamente configurables y bastante rápidos. Aunque no gratis.

 0
Author: ddimitrov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-18 08:32:13

He utilizado JFreeChart en una aplicación bastante compleja que necesitaba visualizar flujos de datos y cálculos basados en los datos. Implementamos la capacidad de editar visualmente los gráficos de datos con el ratón y teníamos un conjunto muy grande de puntos de datos. JFreeChart lo manejó muy bien.

Desafortunadamente me quedé atascado con v0.7, pero la versión más reciente es mucho mejor cuando se trata de claridad de API. La comunidad es muy útil y los desarrolladores están respondiendo a los correos demasiado.

Si está haciendo una aplicación web y no quiere molestarse con las bibliotecas, puede consultar la Google Chart API. No lo usé yo mismo, pero comencé algunas pruebas que fueron muy prometedoras.

 0
Author: cringe,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-01-19 20:36:26

Para el trazado en tiempo real puede utilizar QN Plot, JOpenChart o su bifurcación Openchart2.

 0
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-02-06 14:11:08

JHandles es un paquete gráfico alternativo para Octave (un paquete matemático). Probablemente vale la pena investigar, pero ser específico de octava puede no tener lo que necesita.

-Adam

 0
Author: Adam Davis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-02-06 14:38:21

PtPlot puede ser una buena elección. Antes llamado Ptolomeo.

 0
Author: Jason,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-10-05 21:41:09

Jcckit puede manejar el trazado en tiempo real. Es un oso para usar.

Lo bifurcé, e hice un envoltorio muy simple alrededor de él para el trazado en tiempo no real. La complicada interfaz subyacente también se puede usar directamente.

Https://bitbucket.org/hughperkins/easyjcckit

 0
Author: Hugh Perkins,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-10-18 11:59:34

Es posible que desee comprobar hacia fuera JMathPlot

 -1
Author: Tim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-10 14:35:50