Qual é a melhor biblioteca de gráficos java de código aberto? (exceto jfreechart) [fechado]


136

Por que não há mais código aberto fácil de usar bibliotecas de gráficos para Java ?. O único projeto de código-fonte aberto bem-sucedido nessa área parece ser o jfreechart e nem sequer possui documentação ou exemplos disponíveis.


Estrutura gratuita de gráficos java para Java Swing: frontangle.com/#/icharts . Você pode fazer a maioria dos tipos de gráficos neste exemplo
Oliver Watkins

Respostas:


57

Existe o charts4j, que é uma API de tabelas e gráficos. Ele permite que os desenvolvedores criem programaticamente os gráficos disponíveis na API do Google Chart por meio de uma API Java simples e intuitiva.

Disclaimer: Eu escrevi charts4j . Faremos outro grande lançamento nas próximas semanas.


10
Bom trabalho! A única desvantagem é a necessidade de uma conexão à Internet, embora eu não consiga lembrar quando foi a última vez que fui desconectado. ;-)
fccoelho 6/11/08

19
@pyinsci: algumas lojas impedem que os servidores se conectem a servidores externos da Internet (mesmo que os servidores possam ser acessados ​​pela Internet) por motivos de segurança.
Joachim Sauer

4
Observe que a API de gráficos estáticos do Google está obsoleta desde 20 de abril de 2012
David Rabinowitz 21/01

7
Uma API alternativa que não precisa se conectar a servidores externos da Internet é o XChart .
herrtim

Se você está direcionando o navegador da Web, pode ver os gráficos ZK .
Tom Yeh

57

Não há muitos deles porque estariam competindo com o JFreeChart , e é incrível. Você pode obter documentação e exemplos fazendo o download do guia do desenvolvedor . Também há muitos tutoriais on-line gratuitos, se você procurá-los.


2
Uma contribuição muito útil para o jfreechart foi uma API simples que permitiria gerar um gráfico com uma chamada de função simples, como: plot (array) e obter um objeto gráfico em troca que você poderia personalizar ainda mais, por exemplo, adicionar um título, linhas de grade, etc ...
fccoelho 6/11/08

3
para algumas coisas (plotagem matemática de alta velocidade), o jfreechart é medíocre, não impressionante.
Jason S

2
Eu não, não em Java. Eu achei o JChart2D melhor que o JFreeChart, mas também tinha suas limitações; para um projeto, acabei criando minha própria biblioteca de gráficos, uma experiência dolorosa, mas fez o que eu precisava. Eu gostaria que uma porta do matplotlib do Python estivesse disponível em Java.
Jason S

6
sim download guia do desenvolvedor por US $ 65,00 ....
Totty.js

1
Chamar o JFreeChart de "impressionante" é exagerar. "Impressionante para coisas simples" pode ser mais preciso. +1 para um clone do matplotlib para Java
garyp

15

O EasyCharts é comercial, então eu não poderia usá-lo no meu projeto. Eu usei a biblioteca de gráficos GRAL. Achei muito fácil personalizar e está licenciado sob LGPL, assim como o JFreeChart, para que você possa usá-lo gratuitamente:

http://trac.erichseifert.de/gral


1
Sei que é tarde demais, mas estou procurando documentação, não consigo encontrar uma. Você pode compartilhar, se tiver alguma coisa?
precisa saber é o seguinte

1
Confira gráficos de iceberg: frontangle.com/icharts que eu criei. Eu acho que está lá em cima com JFreechart e todo o resto.
Oliver Watkins

14

Boa pergunta, eu estava apenas procurando alternativas para o JFreeChart eu outro dia. O JFreeChart é excelente e muito abrangente, eu o usei em vários projetos. Meu problema recente era que isso significava adicionar 1.6mb de bibliotecas a um applet de 50kb, então eu estava procurando por algo menor.

A própria FAQ do JFreeChart lista alternativas. Comparado ao JFreeChart, a maioria deles é bem básica e alguns bem feia. O mais promissor parece ser o Java Chart Construction Kit e o OpenChart2 .

Também encontrei o EasyCharts , que é um produto comercial, mas aparentemente gratuito para uso em algumas circunstâncias.

No final, voltei ao JFreeChart, testado e confiável, e usei o Proguard para transformá-lo em um tamanho mais gerenciável.

Sugiro que você dê uma outra olhada no JFreeChart. O guia do usuário está disponível apenas para compra, mas a demonstração mostra o que é possível e é muito fácil descobrir como a partir da documentação da API . Basicamente, você começa com os métodos estáticos ChartFactory e conecta o objeto JFreeChart resultante a um ChartPanel para exibi-lo. Se você ficar preso, tenho certeza de que obterá respostas rápidas para seus problemas no StackOverflow.


Eu criei um simples "plot" invólucro em torno de kit de construção de gráfico java, o que torna muito fácil de usar para parcelas simples bitbucket.org/hughperkins/easyjcckit
Hugh Perkins

5

Para gráficos 2D dinâmicos, tenho usado o JChart2D . É rápido, simples e está sendo atualizado regularmente. O autor foi rápido em responder ao meu único relatório de bug e a algumas solicitações de recursos. Na nossa empresa, preferimos o JFreeChart porque ele foi projetado para uso dinâmico, diferentemente do JFreeChart.


5

Você pode experimentar o Jzy3d . Ajuda a desenhar gráficos 3D simples (superfícies, dispersões, barras, etc.) e possui muitas opções para personalizar o layout de eixos, marcações, etc. Existem muitos exemplos e uma documentação no wiki.

É gratuito e de código aberto.

Felicidades,

Martin


4

Há uma nova biblioteca de gráficos na cidade: JChartlib JChartLib http://freshmeat.net/projects/jchartlib


Parece ótimo!! Leve e sem dependências, uau, bom trabalho. Dei uma olhada no wiki, bem direto. Minha pergunta: permite categorias em vez de valores numéricos no eixo X?
precisa saber é o seguinte

2
Uau, legal obrigado pelo comentário. O número de séries não é realmente limitado nos gráficos de linha. Desenha quantos gráficos você desejar. Acabei de lançar uma nova versão capaz de salvar o gráfico em um arquivo jpg ou png. Mais tipos de gráficos como gráfico de barras, gráfico de barras, gráfico de radar e assim por diante estão no planejamento.
Suvi

Ok, deixe-me tentar um presente antes de ficar velho ...: D
gumuruh

É a GPL. Por favor, você pode torná-lo LGPL? (Ou Apache 2, ou MPL)
Hugh Perkins

A principal razão pela qual eu consideraria usar uma biblioteca de gráficos diferente do jfreechart é que seria bom ter uma biblioteca de gráficos que (i) seja mantida por uma comunidade (ii) possua documentação decente sobre como usá-la disponível gratuitamente. Infelizmente, o jchartlib não oferece nenhuma vantagem em nenhum destes pontos :-(
Hugh Perkins

4

Existe o JChart, que é todo de código aberto. Não tenho certeza exatamente do que você está representando graficamente e como está representado graficamente (servlets, swing, etc.), então eu diria que basta olhar para alguns diferentes e ver o que funciona melhor para você.

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

Eu também usei o JGraph, mas apenas a versão comercial deles. Eles oferecem uma versão de código aberto no entanto:

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


2

Encontrei esta estrutura: jensoft sw2d, gratuito para uso não comercial (licenciamento duplo)

http://www.jensoft.org

Saudações.


2
Este site menciona que o sw2d é licenciado usando a LGPL; não é gratuito para uso em ferramentas de código aberto e comerciais?
Ewan Heming

1

Eu usei o EasyCharts no passado e ele cumpriu seu nome. Não é tão poderoso quanto o JFreeChart, mas o JAR para EasyCharts é muito menor do que para o JFreeChart.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.