2009-01-08 6 views

Répondre

16

Comment créer un échantillon xyplot avec des intervalles de 15 minutes (comme le montre la date)

1) Créer vos données.

XYSeries dataSeries = new XYSeries("SMS Sent"); 

2) Ajoutez vos axes. Si vous voulez que l'axe des x affiche des dates, utilisez un DateAxis comme axe des x. Entrez vos données de date en tant que longues (en millisecondes). jfreecharts prendra soin de la mise en forme pour vous.

DateAxis dateAxis = new DateAxis(timeAxisTitle); 

    DateTickUnit unit = null; 
    unit = new DateTickUnit(DateTickUnit.MINUTE,15); 

    DateFormat chartFormatter = new SimpleDateFormat("yyyy/MM/dd HH:mm"); 
    dateAxis.setDateFormatOverride(chartFormatter); 

    dateAxis.setTickUnit(unit); 

    NumberAxis valueAxis = new NumberAxis(valueAxisTitle); 

3) Utiliser un objet DateTickUnit pour définir la taille de la tique (par exemple 15 min.) Cela tracer un point toutes les 15 minutes.

4) utiliser un générateur de info-bulle pour générer des bulles d'aide (en option)

XYSeriesCollection xyDataset = new XYSeriesCollection(dataSeries); 

    StandardXYToolTipGenerator ttg = new StandardXYToolTipGenerator(
      "{0}: {2}", chartFormatter, NumberFormat.getInstance()); 


    StandardXYItemRenderer renderer = new StandardXYItemRenderer(
      StandardXYItemRenderer.SHAPES_AND_LINES, ttg, null); 

    renderer.setShapesFilled(true); 

    XYPlot plot = new XYPlot(xyDataset, dateAxis, valueAxis, renderer); 

    JFreeChart chart = new JFreeChart(chartTitle, JFreeChart.DEFAULT_TITLE_FONT, plot, false); 
    chart.setBackgroundPaint(java.awt.Color.WHITE); 

5) créer le graphique en instanciant un nouvel objet JFreeChart. Vous pouvez ensuite l'enregistrer ou l'afficher à l'écran. Reportez-vous à la documentation Java sur la façon de procéder.

Questions connexes