Bonjour,
J'ai dans mon code un graphique fait avec JFreeChart qui s'affiche dans un JPanel sur ma fenêtre (un JInternalFrame)
Le problème n'est pas pour le rafraichissement, mais pour l'ajout...
Lorsque le code ci-dessous (extrait) tourne, le graphique n'apparait pas dans le panel, je suis obligé de redimensionner la fenêtre pour qu'il apparaisse... Ensuite il est mis à jour normalement. C'est le premier ajout qui foire. J'utilise un grid bag layout.
Merci d'avance
Un problème similaire, mais qui n'utilise pas la même approche...
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 dataset.setValue((fitness(1)*100.0), colonne, "Colonne 1" dataset.setValue((fitness(2)*100.0), colonne, "Colonne 2" if(chart == null) { chart = ChartFactory.createBarChart("Titre", "Label-X", "Label-Y", dataset, PlotOrientation.VERTICAL, false, true, false); CategoryPlot plot = chart.getCategoryPlot(); NumberAxis rangeAxis = (NumberAxis)plot.getRangeAxis(); rangeAxis.setRange(0.0, 100.0); GridBagConstraints gbc_lblNewLabel_2 = new GridBagConstraints(); gbc_lblNewLabel_2.insets = new Insets(0, 0, 0, 5); gbc_lblNewLabel_2.fill = GridBagConstraints.BOTH; gbc_lblNewLabel_2.gridx = 1; gbc_lblNewLabel_2.gridy = 0; chartPanel = new ChartPanel(chart); pnlHistograme.add(chartPanel, gbc_lblNewLabel_2); this.repaint(); } chart.setTitle("Titre " + cpt); chart.fireChartChanged();
http://www.developpez.net/forums/d68...osants/charts/
PS: La petite feinte suivante fonctionne c'est ce que j'ai utilisé chaque fois que j'ai eu ce problème (problème apparamment lié aux JInternalFrames..) mais j'aimerais la manière plus propre![]()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 chartPanel = new ChartPanel(chart); pnlHistograme.add(chartPanel, gbc_lblNewLabel_2); pnlHistograme.setVisible(false); pnlHistograme.setVisible(true);
Partager