Framework para gerar graficos (Java)

414 views
Skip to first unread message

Robinson Castilho

unread,
Dec 14, 2007, 4:14:10 PM12/14/07
to jug...@googlegroups.com
Olá amigos,
alguém no grupo já teve que gerar um grafico (pizza, barras) para ser apresentado em uma aplicacao web? Estou utilizando Java/jsp.

Uma alternativa muito utilizada é o JFreeChart, junto com Cewolf. Alguém aqui já utilizou? Obteve sucesso?

QQuer ajuda é bem vinda! Obrigado :-)
--
Robinson Castilho
SCJP, SCWCD
Bacarin Desenvolvimento de Software Ltda
Campo Grande - MS - Brasil  
( Fone: +55 (67) 8125-5445

Edilmar Alves

unread,
Dec 14, 2007, 5:04:20 PM12/14/07
to jug...@googlegroups.com
Eu uso o JFreeChart integrado com o JasperReports e funciona 100%.

Robinson Castilho escreveu:
-- 
sds,
Edilmar Alves
Analista de Sistemas
InterSite Informática Ltda
www.intersite.com.br
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#
Use Linux/Java!!!
Use um navegador de verdade... Mozilla/Firefox!
e um cliente de e-mail decente... Mozilla/Thunderbird!
#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#

Daniel Sousa

unread,
Dec 15, 2007, 9:54:09 AM12/15/07
to jug...@googlegroups.com
Uma alternativa interessante é usar FOP + xsl:fo + svg + xsl ... Que tal ?

Daniel

On Dec 14, 2007 7:04 PM, Edilmar Alves <edilma...@intersite.com.br> wrote:
>
> Eu uso o JFreeChart integrado com o JasperReports e funciona 100%.
>
> Robinson Castilho escreveu:
> Olá amigos,
> alguém no grupo já teve que gerar um grafico (pizza, barras) para ser
> apresentado em uma aplicacao web? Estou utilizando Java/jsp.
>
> Uma alternativa muito utilizada é o JFreeChart, junto com Cewolf. Alguém
> aqui já utilizou? Obteve sucesso?
>
> QQuer ajuda é bem vinda! Obrigado :-)
>
> --
>
>
>

Márcio Paulino

unread,
Dec 15, 2007, 10:33:43 AM12/15/07
to jug...@googlegroups.com
Se o intuito for gerar gráficos em PDF, a alternativa JFreeChart x JasperReports seria a ideal.

Agora, se a principio deseja-se gerar gráficos na própria página web (JSP), utilizando ferramentas FREE, as alternativas aconselháveis seriam (1) JFreeChart x Cewolf e (2) JFreeChart x Servlet.

O Cewolf é simples e prático mas é limitado com base em gráficos a serem gerados (aproximadamente 20 tipos de gráficos). Além de possuir uma documentação ridícula. P/ fazer algo funcionar, tem que verificar exemplos disponibilizados pelo mesmo. De certa forma, para gráficos requisitados (pie e bar) tem disponível na biblioteca.

Exemplo.:

Pie3D
    <cewolf:chart id="pie3D" title="Market Share - Outubro/2007" type="pie3D">
        <cewolf:data>
            <cewolf:producer id="pie3DDataProducer" />
        </cewolf:data>
    </cewolf:chart>
    <cewolf:img chartid="pie3D" renderer="/cewolf" width="500" height="400">
        <cewolf:map tooltipgeneratorid="pieToolTipGenerator"/>
    </cewolf:img>

VerticalBar3D
    <cewolf:chart id="verticalBar3D" title="Evolução de Mercado (Comparativo)" type="verticalBar3D" xaxislabel="Período" yaxislabel="Volume de Vendas">
        <cewolf:data>
            <cewolf:producer id="verticalBar3DDataProducer" />
        </cewolf:data>
    </cewolf:chart>
    <cewolf:img chartid="verticalBar3D" renderer="/cewolf" width="400" height="400"/>

Já na solução adotando JFreeChart x Servlet, você terá o benefício de gerar diversos tipos de gráficos usando todos os recursos do JFreeChart. Vai dar um pouco mais de trabalho, mas se a diversidade de gráficos a serem gerados forem relativamente grandes esta seria uma solução boa.

Exemplo:

Servlet
OutputStream out = response.getOutputStream();

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(10.0, "S1", "C1");
dataset.addValue(4.0, "S1", "C2");
dataset.addValue(15.0, "S1", "C3");
dataset.addValue(14.0, "S1", "C4");

JFreeChart chart = ChartFactory.createBarChart ("Bar Chart", "Category", "Value", dataset, PlotOrientation.VERTICAL, true, true, false);

response.setContentType("image/png");
ChartUtilities.writeChartAsPNG(out, chart, 400, 300);
out.close();

JSP
<img src="/showBarChart" width="400">

Espero ter ajudado!

--
[]'s

**********************************************
Márcio Paulino
Campo Grande - MS
MSN / Gtalk: mcopa...@gmail.com
ICQ: 155897898
**********************************************
Reply all
Reply to author
Forward
0 new messages