Quelle est la meilleure bibliothèque de graphiques Java open source? (autre que jfreechart) [fermé]


136

Pourquoi n'y a-t-il pas plus de bibliothèques de graphiques Open Source faciles à utiliser pour Java ?. Le seul projet Open Source réussi dans ce domaine semble être jfreechart, et il n'a même pas de documentation ou d'exemples disponibles.


Framework de création de graphiques Java gratuit pour Java Swing: frontangle.com/#/icharts . Vous pouvez faire la plupart des types de graphiques dans ce domaine
Oliver Watkins

Réponses:


57

Il existe charts4j qui est une API de graphiques et de graphiques. Il permet aux développeurs de créer par programme les graphiques disponibles dans l' API Google Chart via une API Java simple et intuitive.

Avertissement: j'ai écrit charts4j . Nous allons faire une autre version majeure dans les prochaines semaines.


10
Bon travail! Le seul inconvénient est la nécessité d'une connexion Internet, même si je ne me souviens pas de la dernière fois que j'ai été déconnecté. ;-)
fccoelho

19
@pyinsci: certaines boutiques empêchent les serveurs de se connecter à des serveurs Internet externes (même si les serveurs sont accessibles depuis Internet) pour des raisons de sécurité.
Joachim Sauer

4
Notez que l'API des graphiques statiques de Google est obsolète depuis le 20 avril 2012
David Rabinowitz

7
Une API alternative qui n'a pas besoin de se connecter à des serveurs Internet externes est XChart .
herrtim

Si vous ciblez un navigateur Web, vous pouvez consulter les graphiques ZK .
Tom Yeh

57

Il n'y en a pas beaucoup car ils seraient en concurrence avec JFreeChart , et c'est génial. Vous pouvez obtenir de la documentation et des exemples en téléchargeant le guide du développeur . Il existe également des tonnes de tutoriels en ligne gratuits si vous les recherchez.


2
Une contribution très utile à jfreechart était une API simple qui vous permettrait de générer un tracé avec un simple appel de fonction comme ceci: plot (array) et obtenir un objet de graphique en retour que vous pourriez personnaliser, c'est-à-dire ajouter un titre, des quadrillages, etc ...
fccoelho

3
pour certaines choses (tracé mathématique à grande vitesse) jfreechart est médiocre, pas génial.
Jason S

2
Non, pas en Java. J'ai trouvé JChart2D meilleur que JFreeChart, mais il avait aussi ses limites; pour un projet, j'ai fini par créer ma propre bibliothèque de graphiques, une expérience douloureuse mais cela a fait ce dont j'avais besoin. Je souhaite qu'un portage de matplotlib de Python soit disponible en Java.
Jason S

6
oui téléchargement du guide du développeur pour 65,00 $ ....
Totty.js

1
Appeler JFreeChart "génial" est exagéré. "Génial pour des trucs simples" pourrait être plus précis. +1 pour un clone matplotlib pour Java
garyp

15

EasyCharts est commercial donc je n'ai pas pu l'utiliser pour mon projet. J'ai utilisé la bibliothèque graphique GRAL à la place. Je l'ai trouvé très facile à personnaliser et il est sous licence LGPL, tout comme JFreeChart, vous pouvez donc l'utiliser gratuitement:

http://trac.erichseifert.de/gral


1
Je sais qu'il est trop tard, mais je cherche de la documentation, je ne peux pas en trouver. Pouvez-vous s'il vous plaît partager, si vous avez quelque chose?
varunrao321

1
Consultez les graphiques des icebergs: frontangle.com/icharts Je l'ai créé. Je pense que c'est là-haut avec JFreechart et tout le reste.
Oliver Watkins

14

Bonne question, je cherchais moi-même des alternatives à JFreeChart l'autre jour. JFreeChart est excellent et très complet, je l'ai utilisé sur plusieurs projets. Mon problème récent était que cela signifiait ajouter 1,6 Mo de bibliothèques à une applet de 50 Ko, donc je cherchais quelque chose de plus petit.

La FAQ JFreeChart elle-même répertorie les alternatives. Par rapport à JFreeChart, la plupart d'entre eux sont assez basiques et certains assez laids. Les plus prometteurs semblent être le Java Chart Construction Kit et OpenChart2 .

J'ai également trouvé EasyCharts , qui est un produit commercial mais apparemment gratuit dans certaines circonstances.

En fin de compte, je suis retourné au JFreeChart éprouvé et fiable et j'ai utilisé Proguard pour le découper dans une taille plus gérable.

Je vous suggère de jeter un autre regard sur JFreeChart. Le guide de l'utilisateur n'est disponible qu'à l'achat, mais la démo montre ce qui est possible et il est assez facile de comprendre comment à partir de la documentation de l' API . Fondamentalement, vous commencez avec les méthodes statiques ChartFactory et branchez l' objet JFreeChart résultant dans un ChartPanel pour l'afficher. Si vous êtes bloqué, je suis sûr que vous obtiendrez des réponses rapides à vos problèmes sur StackOverflow.


J'ai créé un simple wrapper de "tracé" autour du kit de construction de graphique Java, ce qui le rend vraiment facile à utiliser pour des tracés simples. Bitbucket.org/hughperkins/easyjcckit
Hugh Perkins

5

Pour les graphiques 2D dynamiques, j'utilise JChart2D . C'est rapide, simple et mis à jour régulièrement. L'auteur n'a pas tardé à répondre à mon rapport de bogue et à quelques demandes de fonctionnalités. Nous, dans notre entreprise, le préférons à JFreeChart car il a été conçu pour une utilisation dynamique, contrairement à JFreeChart.


5

Vous pouvez essayer Jzy3d . Il aide à dessiner des graphiques 3D simples (surfaces, dispersions, barres, etc.), et a beaucoup d'options pour personnaliser la disposition des axes, des graduations, etc. Il y a beaucoup d'exemples et une documentation sur le wiki.

C'est gratuit et open source.

À votre santé,

Martin


4

Il y a une nouvelle bibliothèque de cartes en ville: JChartlib JChartLib http://freshmeat.net/projects/jchartlib


Cela semble très bien!! Léger et sans dépendances, wow, beau travail. J'ai jeté un œil au wiki, assez simple. Ma question: permet-il des catégories au lieu de valeurs numériques sur l'axe X?
Gigab0rt

2
Wow, cool merci pour le commentaire. Le nombre de séries n'est en fait pas limité dans les linecharts. Il dessine autant de graphiques que vous le souhaitez. Je viens de publier une nouvelle version capable d'enregistrer le graphique dans un fichier jpg ou png. Plus de types de graphiques tels que des graphiques à barres, des graphiques, des radarchart, etc. sont dans la planification.
suvi le

ok, laissez-moi essayer celui-ci avant qu'il ne vieillisse ...: D
gumuruh

C'est GPL. Pouvez-vous le faire LGPL? (Ou Apache 2, ou MPL)
Hugh Perkins

La principale raison pour laquelle j'envisagerais d'utiliser une bibliothèque de graphiques différente de jfreechart est qu'il serait bien d'avoir une bibliothèque de graphiques qui est (i) maintenue par une communauté (ii) a une documentation décente sur la façon de l'utiliser disponible gratuitement. Malheureusement, jchartlib n'offre aucun avantage sur l'un ou l'autre de ces points :-(
Hugh Perkins

4

Il y a JChart qui est entièrement open source. Je ne sais pas exactement ce que vous représentez et comment vous le représentez (servlets, swing, etc.), alors je dirais simplement d'en regarder quelques-uns différents et de voir ce qui fonctionne pour vous.

http://sourceforge.net/projects/jchart/

J'ai également utilisé JGraph mais je n'ai utilisé que leur version commerciale. Ils offrent cependant une version open source:

http://www.jgraph.com/jgraph.html


2

J'ai trouvé ce framework: jensoft sw2d, gratuit pour un usage non commercial (double licence)

http://www.jensoft.org

Cordialement.


2
Ce site mentionne que sw2d est licencié en utilisant la LGPL; n'est-ce pas gratuit à utiliser dans les outils open source et commerciaux?
Ewan Heming du

1

J'ai utilisé EasyCharts dans le passé et il a été à la hauteur de son nom. Ce n'est pas aussi puissant que JFreeChart, mais le JAR pour EasyCharts est beaucoup plus petit que pour JFreeChart.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.