Java: courbe avec JFreeChart

Résolu
ahmedmahdi Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -  
ahmedmahdi Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   -
bojours,

j'ai créé une application java pour m'afficher les courbes avec JFreeChart. j'ai suivi son tutoriels a la lettre, mais a l'exécution , il m'a toujours une erreur et je n'ai pas réussit a la résoudre.
est ce que quelqu'un peux m'aider svp??
merci d'avance :)


voila le code source du main :


import java.awt.Color;
import java.awt.Frame;
import java.awt.GraphicsConfiguration;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;

 
import org.jfree.data.*;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import org.jfree.chart.*;
import org.jfree.chart.plot.*;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;


public class main {

	
	public static void tracerCourbe(NEWTON n,XYSeries courbe)
	{
		double y,i=n.getMin();
        
        
        while(i<n.getMax())
        {
            
            courbe.add(i, n.resultatPolynome(0,i,0));
            i=i+0.0000001;
        }
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		double res;
		NEWTON n5 = new NEWTON(-5,5);
		n5.chercherPointEquidistant(5);
		n5.calculeTableau();
		XYSeries c5= new XYSeries("courbe1");
		
		tracerCourbe(n5,c5);
		
		
		XYSeriesCollection Dataset = new XYSeriesCollection();
		
		Dataset.addSeries(c5);
		
		JFreeChart Graph = ChartFactory.createXYLineChart(
				"Grape de NEWTON",
				"Axe des Abscices",
				"Axe des Ordonnées",
				Dataset,
				PlotOrientation.VERTICAL,
				true,
				true,
				false);
	    Color gris = new Color(200,200,200);
	    Graph.setBackgroundPaint(gris);
	    
	    
	    //create and display a frame...
	    ChartFrame frame=new ChartFrame("First",Graph);
	    frame.pack();
	    frame.setVisible(true);
		
	}
	
	
	

}




et voila l'erreur généré:
Code :
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
	at org.jfree.data.xy.XYSeries.add(XYSeries.java:412)
	at main.tracerCourbe(main.java:31)
	at main.main(main.java:46)





les lignes qui génère sont :
la ligne 31 est:
courbe.add(i, n.resultatPolynome(0,i,0));


et la ligne 46 est:
tracerCourbe(n5,c5);


sachant que toutes les classes marchent parfaitement et n.resultatPolynome(0,i,0) retourne un double.



merci encore d'avoir pris la peine de lire



A voir également:

1 réponse

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
OutOfMemory c'est parce que la JVM n'a pas assez de ressources pour fonctionner.
Tu peux augmenter la mémoire avec l'option Xmx<size>, sur Windows7 tu peux facilement lui donner 1Go, tu ne te serviras pas de tout mais t'es sûr que ça passe.

java -Xmx1024m main
1
ahmedmahdi Messages postés 91 Date d'inscription   Statut Membre Dernière intervention   15
 
oui merci beaucoup,
je viens de résoudre le problème en faite il fallait réduire le nombre de point a calculer sinon ça dépasse la mémoire merci :)


résolution:
changer la ligne:
i=i+0.0000001;


par:
i=i+0.001;


merci beaucoup de m'avoir aider merci :)
0