Olá pessoal, primeiramente gostaria de desejar um feliz natal a todos.
Estou desenvolvendo um sistema de informações as quais usam dados estatisticos que são mostrados no Jfree
Até ontem obtive êxito nas minhas experiências, mas hoje passei o dia tentando fazer uma coisa que praticamente tá me dando uma baita dor de cabeça, por isso venho humildemente pedir um auxilio a vcs do forum.
Acontece que estava usando o TimeSeries e utilizando o Month.class para mostrar no eixo X os meses.
Porém hoje tive que colocar no eixo X umas palavras mesmo (strings). Então fiquei enrolado! :shock:
O erro acontece pq eu nao sei como fazer do que o JfreeChart aceite a entrada de qualker palavra no eixo X.
por exemplo:
hitsPerMonthData1.add( “1º bimestre”, 25.0);
hitsPerMonthData1.add( “2º bimestre”, 31.0);
hitsPerMonthData1.add( “3º bimestre”, 45.0);
Existe possibilidade de fazer isso usando gráficos de linhas (não de barra) ???
Agradeço a ajuda de todos, um abraço!
Vou mostrar pra vcs abaixo a meu código, uso o JSP:
<%@ page import = “org.jfree.chart.plot.,
org.jfree.chart.renderer.xy.,
org.jfree.chart.,
org.jfree.data.time.,
org.jfree.data.general.,
org.jfree.chart.servlet.,
org.jfree.chart.entity.,
java.io.,
java.util.,
java.awt.,
java.awt.image.*”
%>
<%
String titulo = “DESC_INDICADOR”;
String labelX = “DESC_UNIDADE_MEDIDA_X”;
String labelY = “DESC_UNIDADE_MEDIDA_Y”;
TimeSeries hitsPerMonthData1 = new TimeSeries( “Label 2007”, Month.class );
hitsPerMonthData1.add(new Month( 1, 2007 ), 25.0);
hitsPerMonthData1.add(new Month( 2, 2007 ), 31.0);
hitsPerMonthData1.add(new Month( 3, 2007 ), 45.0);
TimeSeriesCollection hitsPerMonthDataset = new TimeSeriesCollection();
hitsPerMonthDataset.addSeries(hitsPerMonthData1);
hitsPerMonthDataset.setDomainIsPointsInTime( false );
JFreeChart hitsPerMonthChart = ChartFactory.createTimeSeriesChart(titulo,labelX,labelY,hitsPerMonthDataset,true,false,false);
hitsPerMonthChart.setBackgroundPaint( Color.white );
XYPlot plot1 = hitsPerMonthChart.getXYPlot();
XYItemRenderer renderer1 = (XYItemRenderer)plot1.getRenderer();
renderer1.setSeriesPaint(0, Color.blue );
BufferedImage image = hitsPerMonthChart.createBufferedImage(500,300);
ChartUtilities.writeBufferedImageAsJPEG(response.getOutputStream(),image);
/*para salvar a imagem
ChartUtilities.saveChartAsJPEG(new File(“julioteste.jpg”), chart, 500, 300);
*/
%>