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 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
|
package RepresentationStatistique;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import org.jfree.chart.*;
import org.jfree.chart.plot.*;
import org.jfree.chart.axis.CategoryAxis;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.NumberTickUnit;
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.data.time.Hour;
public class Exemple
{
public static void main (String args[])
{
Fenetre fenetre = new Fenetre();
}
}
class Fenetre extends JFrame
{
NumberAxis rangeAxis;
ChartPanel chartPanel;
JFreeChart chart;
TimeSeries series_ligne_1 = null;
TimeSeries series_ligne_2 = null;
public Fenetre()
{
this.setSize(400,300);
this.setTitle("Exemple");
JPanel p = new JPanel();
// Couleurs des lignes
Color COULEURLIGNE1 = Color.black;
Color COULEURLIGNE2 = Color.red;
// On ajoute les lignes dans le dataset
TimeSeriesCollection dataSet = new TimeSeriesCollection();
// Creation des lignes
series_ligne_1 = new TimeSeries("Ligne 1", Hour.class);
series_ligne_2 = new TimeSeries("Ligne 2", Hour.class);
// Ajout des ligne dans le dataset
dataSet.addSeries(series_ligne_1);
dataSet.addSeries(series_ligne_2);
// Creation du graphique
chart = ChartFactory.createTimeSeriesChart("","X","Y",dataSet,true,false,false);
chartPanel = new ChartPanel(chart, true);
// Les dimmensions du graphique
Dimension d = new Dimension(350,250);
chartPanel.setMaximumSize(d);
chartPanel.setPreferredSize(d);
chartPanel.setMinimumSize(d);
p.add(chartPanel);
XYPlot plot = (XYPlot) chart.getPlot();
// On definie une couleur pour les lignes
plot.getRenderer().setSeriesPaint(0,COULEURLIGNE1);
plot.getRenderer().setSeriesPaint(1,COULEURLIGNE2);
// On definie une couleur de fond pour le graphique
plot.setBackgroundPaint(Color.white);
rangeAxis = (NumberAxis) plot.getRangeAxis();
// On fixe une taille pour l'axe des ordonnées
rangeAxis.setUpperBound(100.0);
this.getContentPane().add(p);
addData();
this.setVisible(true);
}
// On ajoute des données
public void addData()
{
// Desactivation de l'ajout dans le graphique
series_ligne_1.setNotify(false);
series_ligne_1.add(new Hour(1,5,2,2005), 5.55);
series_ligne_1.add(new Hour(2,5,2,2005), 2.55);
series_ligne_1.add(new Hour(3,5,2,2005), 3.55);
series_ligne_1.add(new Hour(4,5,2,2005), 11.55);
series_ligne_1.add(new Hour(5,5,2,2005), 12.55);
series_ligne_1.add(new Hour(6,5,2,2005), 4.55);
// Activation de l'ajout dans le graphique
series_ligne_1.setNotify(true);
series_ligne_2.setNotify(false);
series_ligne_2.add(new Hour(1,5,2,2005), 1.55);
series_ligne_2.add(new Hour(2,5,2,2005), 15.05);
series_ligne_2.add(new Hour(3,5,2,2005), 16.55);
series_ligne_2.add(new Hour(4,5,2,2005), 45.55);
series_ligne_2.add(new Hour(5,5,2,2005), 35.55);
series_ligne_2.add(new Hour(6,5,2,2005), 39.55);
series_ligne_2.setNotify(true);
// Titre du graphique
chart.setTitle("Exemple de Graphique");
chartPanel.setChart(chart);
}
} |
Partager