Réaliser des graphiques

Résolu
Signaler
Messages postés
2
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
26 août 2011
-
Messages postés
2113
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
-
Voici mon programme, en une seule séquence ou
en 2 fichiers : Fichier et MonPanneau. Je veux afficher un diagramme. J'aurai une joie immense à sortir une courbe.

grandMerci



package graphe2;


import java.awt.*;
import javax.swing.*;
import java.util.*;

class Fichier {

public static void main (String [] arg) {


int[] xs = {25, 75, 125, 85, 125, 75, 25, 65};

MonPanneau.passage(xs);

}


}


public class MonPanneau extends JPanel
{
public static int[] xs;
public static void passage (int[] xs) {
System.out.println(xs [3]);
Fenetre();

}

public static void Fenetre() {
try { UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); }
catch (UnsupportedLookAndFeelException e) { System.out.println(e); }
catch (ClassNotFoundException e) { System.out.println(e); }
catch (InstantiationException e) { System.out.println(e); }
catch (IllegalAccessException e) { System.out.println(e); }


JFrame fenetre = new JFrame();
fenetre.setSize(400, 400);
fenetre.setTitle("Simple dessin en JAVA 2D");
JPanel panneau = new MonPanneau();
panneau.setBackground(Color.WHITE);
fenetre.add(panneau);
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fenetre.setVisible(true);
}

@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
int larg = getWidth();
int haut = getHeight();
g.setColor (Color.black);

g.drawLine(larg/8,0,larg/8, haut);
g.drawLine(0,haut*7/8,larg, haut*7/8);
g.setColor (Color.red);


System.out.println(xs [3]);
int[] ys = {50, 90, 50, 100, 150, 110, 150, 100};
g.drawPolyline(xs, ys, 8);
}
}

5 réponses

Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
363
Bonjour,

Pour afficher des diagrammes, tu peux utiliser la librairie JFreeChart qui est assez bien documentée sur internet.

Bon courage
Messages postés
2113
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
11
sinon j ai aussi fourni un exemple de source asser basic... ;o) JFreechart convient rarement ;o) à des besoin aplicatif ;o) ...

par contre si tu compte afficher ta frame ;o) il est indispensable de l instancier dans ton main ;o) ou plutot (ce serait bien quand meme) de la rendre visible...

Mais bien mieux encore ... reprend un exemple, ton code est vraiment brouillon... pourquoi diable nommer ta classe principale 'Fichier' ??!!!


GodConan ;o)

Salut,

Tu déclare 3 fois le tableau xs

-une fois dans la classe Fichier où tu l'initialise pour passer le contenu à la classe MonPanneau,
-une 2ème fois dans la classe MonPanneau en variable de classe,
-et enfin une 3ème fois dans la méthode passage qui recevra bien ce qui est envoyé par Fichier.

Or ce que tu vas utiliser c'est le xs n°2 qui reste vierge ...

Alors dans un premier temps tu peux faire:

public class MonPanneau extends JPanel 
   {
      public static int[] xs;
      
      public static void passage (int[] xs1) //<<<<<<<<<< xs1
      {
         xs = new int[xs1.length]; // <<<<<<< dimension de xs
         for(int i = 0; i < xs1.length; i++)
         {
            System.out.println(xs1 [i]);
            xs [i] = xs1 [i]; // <<<<<< copie de xs1 dans xs2 (ou clone)
         } 
         Fenetre(); 
      
      }


pour constater que c'est beaucoup mieux.

Et voyant ce qu'il se passait simplifier le tout.


Cordialement,


...\ Dan /...
Messages postés
2
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
26 août 2011

Merci beaucoup pour votre aide.
Quand je me suis inscrit on m'a demandé de me présenter. Alors je m'explique.
Il y a 3 ans, je me suis mis à Java 6 avec le livre d'Anne Tasso et j'ai coincé aux 2/3 du livre, au chapitre 11. Je me suis inscris au CNAM d'Aix en e-learning. Les cours sont en 1.4 avec des ordres obsolètes. Oups ! Je l'ai écrit au directeur et le prof (Douguet) m'a jeté. Donc du cours, il n'est resté qu'un livre électronique. Et le cours est une copie conforme des exemples d'Anne Tasso … Aaaaah ! (râle ultime)
Je ne sais pas installer Jfreechart avec NetBeans mais je vais essayer.
En corrigeant mon bout de code, et ça marche, vous me rendez un espoir immense. Je ne sais comment vous remercier. Champagne si vous voulez.
Prof en collège, j'ai 62 ans, et je tiens à défendre les étudiants. Il n'y a pas de droit des études comme on a le droit du travail qui gère la relation de subordination.
Apprendre seul, c'est galère. Merci vraiment Codes-Sources. Les articles sont pointus, je n'osais pas.

Régis Lambert, à Luynes.

grandMerci
Messages postés
2113
Date d'inscription
samedi 8 novembre 2003
Statut
Contributeur
Dernière intervention
6 octobre 2012
11
heureusement ;o) il y a la 'toile' ;o) ... ;o) quand j ai commencé ;o) y avait RIEN ;o) héhé ;o)


GodConan ;o)