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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
| public class ResultatView3 extends JFrame implements ActionListener, ChangeListener {
private JPanel panel1 = new JPanel();
private ChartPanel chartPanel1;
private JSlider slide = new JSlider(JSlider.HORIZONTAL);
private JSlider slide2 = new JSlider(JSlider.HORIZONTAL);
private ChartFrame frameGeo;
private JFreeChart chartGeo;
private int minimumSize = 13;
private int maximumSize = 13*1000;
private int valeur2 = 0;
private int valeur4 = 100;
public ResultatView3(){
super();
this.setTitle("Résultats");
this.setSize(1400, 800);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.getContentPane().setLayout(null);
panel1.setBounds(50, 50, 250, 100);
panel1.setBorder(BorderFactory.createTitledBorder("Suppression de points"));
this.getContentPane().add(panel1);
slide.setValue(0);
slide2.setValue(100);
panel1.add(slide);
panel1.add(slide2);
slide.addChangeListener(this);
slide2.addChangeListener(this);
affichageChartPanel(minimumSize, maximumSize, JComboBox1.getSelectedItem().toString());
}
public void affichageChartPanel(int minSize, int maxSize, String donnee){
chart = affichageGraphe(minSize, maxSize, donnee);
chartPanel1 = new ChartPanel(chart, false);
chartPanel1.setBounds(700,20,650,400);
chartPanel1.setBorder(BorderFactory.createTitledBorder("Graphe"));
this.getContentPane().add(chartPanel1);
}
public JFreeChart affichageGraphe(int minimumSize, int maximumSize, String donnee){
XYSeries seriesGeo = new XYSeries("Titre");
for (int i=minimumSize ; i<maximumSize ; i+=19)
{
double val1 = Double.parseDouble(bufferLecture[i]);
double val2= Double.parseDouble(bufferLecture[i+1]);
seriesGeo4.add(val1 , val2);
}
XYDataset xyDatasetGeo = new XYSeriesCollection(seriesGeo);
chartGeo = ChartFactory.createScatterPlot
("XYLine Chart using JFreeChart", "Différentes mesures", "Unité",
xyDatasetGeo, PlotOrientation.VERTICAL, true, true, false);
frameGeo=new ChartFrame("XYLine Chart",chartGeo);
frameGeo.setSize(700,500);
frameGeo.setLocation(700,0);
frameGeo.setVisible(true);
return chartGeo;
}
public void stateChanged(ChangeEvent ev){
if(ev.getSource() == slide)
{
frameGeo.setVisible(false);
int valeur1 = slide.getValue();
minimumSize += (valeur1 - valeur2)*19;
valeur2 = valeur1;
affichageChartPanel(minimumSize, maximumSize, JComboBox1.getSelectedItem().toString());
}
}
} |