Boa tarde pessoal.
Estou tentando criar um gráfico, utilizando o jfreechart. O gráfico está funcionando corretamente o problema é com os valores fornecidos. Na criação do dataset passo como parametro um vetor, sendo esse atributo da classe, o problema é que o valor é sempre 0.0.
Segue o código sendo que as definições de parametro são feitas no método createDataset().
Se alguem souber onde estou errando e puder ajudar ficarei grato. Obrigado.
package apsi;
import java.util.Random;
import java.util.concurrent.TimeUnit;
import org.jfree.data.category.CategoryDataset;
import org.jfree.data.category.DefaultCategoryDataset;
public class Valores {
Random va = new Random();
Algoritmo or = new Algoritmo();
double[] tempoSelectionMili = new double[40];
double[] tempoInsertionMili = new double[40];
int[] valores = new int[20];
double tempot = 0;
public int[] getValores() {
return valores;
}
public void setValores(int[] valores) {
this.valores = valores;
}
public double[] getTempoInsertionMili() {
return tempoInsertionMili;
}
public void setTempoInsertionMili(double[] tempoInsertionMili) {
this.tempoInsertionMili = tempoInsertionMili;
}
public double[] getTempoSelectionMili() {
return tempoSelectionMili;
}
public void setTempoSelectionMili(double[] tempoSelectionMili) {
this.tempoSelectionMili = tempoSelectionMili;
}
//Metodos
int[] GeraValores(){
for( int i = 0; i < this.valores.length; i++) {
this.valores[i] = va.nextInt(100);
}
Interface a = new Interface();
return valores;
}
void OrdenaVetorSelection(){
int i = 0;
while(i < 40)
{
this.valores = GeraValores();
double inicio = System.nanoTime();
or.SelectionSort(this.valores);
double termino = System.nanoTime();
tempoSelectionMili[i] = TimeUnit.MICROSECONDS.convert((long)(termino - inicio), TimeUnit.NANOSECONDS);
i++;
}
}
void OrdenaVetorInsertion(){
int j = 0;
while(j < 40)
{
this.valores = GeraValores();
double inicio = System.nanoTime();
or.insertionSort(this.valores);
double termino = System.nanoTime();
tempoInsertionMili[j] = TimeUnit.MICROSECONDS.convert((long) (termino - inicio), TimeUnit.NANOSECONDS);
j++;
}
}
double SomaTempo(double[] tempos)
{
for(int k = 0; k < tempos.length; k++)
{
tempot = (tempot + tempos[k]);
}
return tempot;
}
CategoryDataset createDataset() {
// row keys...
final String series1 = "Insertion Sort";
final String series2 = "Selection Sort";
Valores val = new Valores();
// column keys...
final String type1 = "1";
final String type2 = "2";
final String type3 = "3";
final String type4 = "4";
final String type5 = "5";
final String type6 = "6";
final String type7 = "7";
final String type8 = "8";
// create the dataset...
final DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.addValue(tempoInsertionMili[0], series1, type1);
dataset.addValue(tempoInsertionMili[1], series1, type2);
dataset.addValue(tempoInsertionMili[2], series1, type3);
dataset.addValue(tempoSelectionMili[0], series2, type1);
dataset.addValue(tempoSelectionMili[1], series2, type2);
dataset.addValue(tempoSelectionMili[2], series2, type3);
return dataset;
}
}