Olá pessoal, já faz alguns dias que estou preso nesse problema e agradeceria muito se alguém pudesse me ajudar.
Eu tenho uma classe que lê o arquivo XML e pega os dados que eu quero. Tenho outra classe que peguei da internet que gera um gráfico de linha do jeito que preciso. O problema é que eu não sei como passar os meus dados obtidos para o “dataset” da classe do gráfico. Vou postar o código para ver se ajuda a entender.
Classe que gera o gráfico
[code]import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
public class LineChart_AWT extends ApplicationFrame {
public LineChart_AWT( String applicationTitle , String chartTitle )
{
super(applicationTitle);
JFreeChart lineChart = ChartFactory.createLineChart(
chartTitle,
“Years”,“Number of Schools”,
createDataset(),
PlotOrientation.VERTICAL,
true,true,false);
ChartPanel chartPanel = new ChartPanel( lineChart );
chartPanel.setPreferredSize( new java.awt.Dimension( 560 , 367 ) );
setContentPane( chartPanel );
}
private DefaultCategoryDataset createDataset()
{
DefaultCategoryDataset dataset = new DefaultCategoryDataset( );
dataset.addValue( 15 , “schools” , “1970” );
dataset.addValue( 30 , “schools” , “1980” );
dataset.addValue( 60 , “schools” , “1990” );
dataset.addValue( 120 , “schools” , “2000” );
dataset.addValue( 240 , “schools” , “2010” );
dataset.addValue( 300 , “schools” , “2014” );
return dataset;
}
public static void main( String[ ] args )
{
LineChart_AWT chart = new LineChart_AWT(
“School Vs Years” ,
“Number of Schools vs years”);
chart.pack( );
RefineryUtilities.centerFrameOnScreen( chart );
chart.setVisible( true );
}
}[/code]
Eu tentei criar parâmetro para pegar meus dados no método “createDataset”, mas aí causa erro em outros métodos.
Inicialmente gostaria de “plotar” apenas esse meu ArrayList “listaStep” no eixo Y enquanto o eixo X avança em espaços constantes. Alguém poderia me ajudar por favor?