¿Cuál es la mejor biblioteca de gráficos de código abierto de Java? (que no sea jfreechart) [cerrado]


136

¿Por qué no hay más bibliotecas de gráficos de código abierto fáciles de usar para Java? El único proyecto exitoso de código abierto en esta área parece ser jfreechart, y ni siquiera tiene documentación o ejemplos disponibles.


Marco de gráficos java gratuito para Java Swing: frontangle.com/#/icharts . Puedes hacer la mayoría de los tipos de gráficos en esto
Oliver Watkins,

Respuestas:


57

Hay charts4j, que es una API de tablas y gráficos. Permite a los desarrolladores crear mediante programación los gráficos disponibles en la API de Google Chart a través de una API Java sencilla e intuitiva.

Descargo de responsabilidad: escribí charts4j . Haremos otro lanzamiento importante en las próximas semanas.


10
¡Buen trabajo! El único inconveniente es la necesidad de una conexión a Internet, aunque no puedo recordar cuándo fue la última vez que me desconecté. ;-)
fccoelho

19
@pyinsci: algunas tiendas evitan que los servidores se conecten a servidores externos de internet (incluso si los servidores son accesibles desde internet) por razones de seguridad.
Joachim Sauer

44
Tenga en cuenta que la API de gráficos estáticos de Google ha quedado en desuso desde el 20 de abril de 2012
David Rabinowitz

77
Una API alternativa que no necesita conectarse a servidores externos de Internet es XChart .
herrtim

Si se dirige al navegador web, puede echar un vistazo a los gráficos ZK .
Tom Yeh

57

No hay muchos porque competirían con JFreeChart , y es increíble. Puede obtener documentación y ejemplos descargando la guía del desarrollador . También hay toneladas de tutoriales en línea gratuitos si los busca.


2
Una contribución muy útil a jfreechart fue una API simple que le permitiría generar un gráfico con una simple función llamada así: plot (array) y obtener un objeto de gráfico a cambio que podría personalizar, es decir, agregar un título, líneas de cuadrícula, etc ...
fccoelho

3
para algunas cosas (trazado matemático de alta velocidad) jfreechart es mediocre, no impresionante.
Jason S

2
Yo no, no en Java. Encontré JChart2D mejor que JFreeChart, pero también tenía sus limitaciones; para un proyecto terminé haciendo mi propia biblioteca de gráficos, una experiencia dolorosa pero hizo lo que necesitaba. Desearía que un puerto de matplotlib de Python estuviera disponible en Java.
Jason S

66
sí descargando la guía del desarrollador por $ 65.00 ....
Totty.js

1
Llamar a JFreeChart "impresionante" es exagerarlo. "Impresionante para cosas simples" podría ser más preciso. +1 para un clon matplotlib para Java
garyp

15

EasyCharts es comercial, así que no pude usarlo para mi proyecto. Usé la biblioteca de gráficos GRAL en su lugar. Me pareció muy fácil de personalizar y tiene licencia bajo LGPL al igual que JFreeChart, por lo que puede usarlo de forma gratuita:

http://trac.erichseifert.de/gral


1
Sé que es demasiado tarde, pero estoy buscando documentación, no puedo encontrarla. ¿Puedes compartir, si tienes algo?
varunrao321

1
Echa un vistazo a los gráficos de iceberg: frontangle.com/icharts Lo creé. Creo que está ahí arriba con JFreechart y todo lo demás.
Oliver Watkins el

14

Buena pregunta, solo estaba buscando alternativas a JFreeChart el otro día. JFreeChart es excelente y muy completo, lo he usado en varios proyectos. Mi problema reciente era que significaba agregar 1,6 mb de bibliotecas a un applet de 50 kb, por lo que estaba buscando algo más pequeño.

Las preguntas frecuentes de JFreeChart en sí enumeran alternativas. En comparación con JFreeChart, la mayoría de ellos son bastante básicos y algunos bastante feos. Los más prometedores parecen ser el Java Chart Construction Kit y OpenChart2 .

También encontré EasyCharts , que es un producto comercial pero aparentemente libre de usar en algunas circunstancias.

Al final, volví al probado y confiable JFreeChart y usé Proguard para cortarlo en un tamaño más manejable.

Le sugiero que eche otro vistazo a JFreeChart. La guía del usuario solo está disponible para comprar, pero la demostración muestra lo que es posible y es bastante fácil averiguar cómo hacerlo a partir de la documentación de la API . Básicamente, comienza con los métodos estáticos de ChartFactory y conecta el objeto JFreeChart resultante en un ChartPanel para mostrarlo. Si se atasca, estoy seguro de que obtendrá algunas respuestas rápidas a sus problemas en StackOverflow.


Creé un simple envoltorio "plot" alrededor del kit de construcción de gráficos java, que lo hace realmente fácil de usar para trazados simples bitbucket.org/hughperkins/easyjcckit
Hugh Perkins

5

Para gráficos 2D dinámicos, he estado usando JChart2D . Es rápido, simple y se actualiza regularmente. El autor ha respondido rápidamente a mi informe de un error y a algunas solicitudes de funciones. Nosotros, en nuestra empresa, lo preferimos a JFreeChart porque fue diseñado para un uso dinámico, a diferencia de JFreeChart.


5

Puedes probar Jzy3d . Ayuda a dibujar gráficos 3D simples (superficies, dispersiones, barras, etc.), y tiene muchas opciones para personalizar el diseño de ejes, marcas, etc. Hay muchos ejemplos y documentación en la wiki.

Es gratis y de código abierto.

Salud,

Martín


4

Hay una nueva biblioteca de gráficos en la ciudad: JChartlib JChartLib http://freshmeat.net/projects/jchartlib


¡¡Se ve genial!! Ligero y sin dependencias, guau, buen trabajo. Eché un vistazo a la wiki, bastante sencillo. Mi pregunta: ¿permite categorías en lugar de valores numéricos en el eje X?
Gigab0rt

2
Wow, genial gracias por tu comentario. El número de series en realidad no está limitado en los diagramas de líneas. Dibuja tantos gráficos como quieras. Acabo de lanzar una nueva versión que puede guardar el gráfico en un archivo jpg o png. Se están planificando más tipos de gráficos como gráficos de barras, gráficos de torta, gráficos de radar, etc.
suvi

bien, déjame probar este antes de que
envejezca

Es GPL. Por favor, ¿puedes hacerlo LGPL? (O Apache 2, o MPL)
Hugh Perkins

La razón principal por la que consideraría usar una biblioteca de gráficos diferente a jfreechart es que sería bueno tener una biblioteca de gráficos que (i) sea mantenida por una comunidad (ii) tenga documentación decente sobre cómo usarla disponible de forma gratuita. Lamentablemente, jchartlib no ofrece ninguna ventaja en ninguno de estos puntos :-(
Hugh Perkins


2

Encontré este marco: jensoft sw2d, gratuito para uso no comercial (doble licencia)

http://www.jensoft.org

Saludos.


2
Este sitio menciona que sw2d tiene licencia usando LGPL; ¿No es libre de usar tanto en herramientas de código abierto como comerciales?
Ewan Heming

1

He usado EasyCharts en el pasado y estuvo a la altura de su nombre. No es tan poderoso como JFreeChart, pero el JAR para EasyCharts es mucho más pequeño que para JFreeChart.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.