IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

JFreeChar deux graphiques


Sujet :

AWT/Swing Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 168
    Par défaut JFreeChar deux graphiques
    Bonjour, j'essaye d'afficher dans jPanel deux graphiques qui n'apparaisse que suite à un click sur un bouton. Dans mon JPanel j'ai deux autres jPanel (jPanel1R1 et jPanel1R2) dans lesquels j'affiche les graphiques.
    Le problème vient du fait que le premier graphique s'affiche correctement, quand je clique pour demander l'autre grap, rien ne passe mais le simple fait de cliquer sur mon frame fait apparaitre l'autre graphe. J'utilise pourtant SwingUtilities.invokeLater. Je travaille avec NetBeans et j'utilise JFreeChart.
    Merci

    Voici un bout du code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    private void jRadioButton1MousePressed(java.awt.event.MouseEvent evt) {                                                 
                    SwingUtilities.invokeLater(new Runnable() {
                    public void run() {    
     
    		//ICI RECHERCHE BD
     
     
                    DefaultPieDataset defaultpiedataset = new DefaultPieDataset();
                    defaultpiedataset.setValue("WWW", var1);
                    defaultpiedataset.setValue("BBB", var2);
                    JFreeChart jfreechart = ChartFactory.createPieChart3D("titre", defaultpiedataset, true, false, false);
                    PiePlot3D pieplot3d = (PiePlot3D)jfreechart.getPlot();
                    pieplot3d.setLabelGenerator(new StandardPieSectionLabelGenerator("{2}"));
                    pieplot3d.setStartAngle(290D);
                    pieplot3d.setDirection(Rotation.CLOCKWISE);
                    pieplot3d.setForegroundAlpha(0.5F);
                    pieplot3d.setNoDataMessage("No data to display");
                    //pieplot3d.setLabelGenerator(new CustomLabelGenerator());
                    cPanel1 = new ChartPanel(jfreechart);
                    cPanel1.setPreferredSize(new Dimension(400, 100));
                    jPanel1R1.add(cPanel1);
     
                    }
                    });
     
     
        }                                                
     
        private void jRadioButton2MousePressed(java.awt.event.MouseEvent evt) {                                                  
                    SwingUtilities.invokeLater(new Runnable() {
                    public void run() {
                    //ICI RECHERCHE BD
     
     
                    DefaultPieDataset defaultpiedataset = new DefaultPieDataset();
                    defaultpiedataset.setValue("aaa", var3);
                    defaultpiedataset.setValue("fff", var4);
                    JFreeChart jfreechart = ChartFactory.createPieChart3D("titre2",   defaultpiedataset, true, false, false);
                    PiePlot3D pieplot3d = (PiePlot3D)jfreechart.getPlot();
                    pieplot3d.setLabelGenerator(new StandardPieSectionLabelGenerator("{2}"));
                    pieplot3d.setStartAngle(290D);
                    pieplot3d.setDirection(Rotation.CLOCKWISE);
                    pieplot3d.setForegroundAlpha(0.5F);
                    pieplot3d.setNoDataMessage("No data to display");
     
                    ChartPanel cPanel = new ChartPanel(jfreechart);
                    cPanel.setPreferredSize(new Dimension(400, 100));
                    jPanel1R2.add(cPanel);
     
      }
    });
     
     
     
        }

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Fais un appel à repaint (ou à revalidate si le repaint ne marche pas) après avoir ajouté ton deuxième graphe)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fusion de deux graphiques
    Par KaguraSohma dans le forum R
    Réponses: 4
    Dernier message: 06/05/2009, 13h15
  2. Deux graphiques sur la même figure
    Par kchiheb dans le forum MATLAB
    Réponses: 9
    Dernier message: 20/10/2008, 15h30
  3. [spy] Superposition de deux graphiques
    Par m4tl4b dans le forum MATLAB
    Réponses: 14
    Dernier message: 08/04/2008, 20h02
  4. création de deux graphiques à la fois
    Par Makino dans le forum Tkinter
    Réponses: 2
    Dernier message: 06/03/2006, 16h48
  5. affichage simultané de deux graphiques en Gnuplot
    Par Makino dans le forum Tkinter
    Réponses: 2
    Dernier message: 01/03/2006, 09h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo