Criar gráfico SIMPLESSSSSS - JFreeChart

2 respostas
Starlya

Gente.. alguem me ajuda a fazer um grafico de linha XY no JFreechar urgente, por favor!!!

EU N QUERO UMA SERIE TEMPORAL.... eu quero soh um grafico.. onde ue possa escolher o q por me cada eixo....

eu toh tentando mais n consigo.... eu n sei mexer com a classe DefaultXYDataset, n consigo inserir os dados nem nada...

alguem me da uma luz.. por favor...

DefaultXYDataset dx= new DefaultXYDataset();
            
        TimeSeries s1 = new TimeSeries("Demanda");
        
               
        dx.addSeries(X, d);

2 Respostas

L

Bom, eis um metodo pada criar um gráfico em barras 3d

protected static BufferedImage gerarGraficoBarraVertical3D(String tituloGrafico, String

               tituloEixoX, String tituloEixoY, ArrayList array) throws Exception {

        BufferedImage buf = null;
        
        try {

            DefaultCategoryDataset defaultCategoryDataset = new DefaultCategoryDataset();

            Iterator iterator = array.iterator();
 
            while (iterator.hasNext()) {

                ControleValores value = (ControleValores) iterator.next();
                defaultCategoryDataset.addValue(value.getContador(), value.getSituacao(), value.getValor() );

            }

            JFreeChart chart = ChartFactory.createBarChart3D(tituloGrafico, tituloEixoX,

                          tituloEixoY, defaultCategoryDataset, PlotOrientation.VERTICAL,

                          true, false, false);
            CategoryPlot category = chart.getCategoryPlot();
            CategoryItemRenderer renderer = category.getRenderer();
            renderer.setSeriesPaint(0, Color.BLUE);
            renderer.setSeriesPaint(1, Color.RED);

            chart.setBorderVisible(true);

            chart.setBorderPaint(Color.black);

            buf = chart.createBufferedImage(900 , 500);
            
        } catch (Exception e) {

            throw new Exception(e);

        }

        return buf;

    }

vc passa os atributos: Titulo do grafico, titulo eixo x, titulo eixo y e um Array list que é onde esta os dados que vao preencher o grafico…
o metodo te retorna um BufferedImage que apos vc pode salvar…

Starlya

Como eu disse eu queria um gráfico em linha… em barras tem exemplo na propria lib, achei impressionante q n tinha nenhum de linha que não fosse uma serie temporal…

por sorte fucei tanto que achei um jeito atraves da classe XYSeries… quem tiver o mesmo problema da uma olhada nessa classe e usa ela junto com o XYDataset e o Chartfactory.createXYLineChart

Criado 30 de setembro de 2008
Ultima resposta 1 de out. de 2008
Respostas 2
Participantes 2