[JFreeChart] probleme de dates
Bonjour a tous,
Voila j'ai un petit probleme avec l'utilisation de JFreeChart... Je voudrais utiliser un TimeSeriesChart pour afficher une consommation.
Sur l axe des ordonnées j ai une valeur réelle.
Sur l axe des abscisses j'ai une date.
J ai besoin d'une precision au jour donc j'ai créé mes timeSeries de la sorte :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
public TimeSeries CreerTimeSeries()
{
TimeSeries serie = new TimeSeries(nom);
for(int i = 1; i < mesRavitaillements.size();i++)
{
double lAu100 = (mesRavitaillements.get(i-1).getLitres() / (mesRavitaillements.get(i).getKm() - mesRavitaillements.get(i-1).getKm() ) ) * 100;
Calendar date = Calendar.getInstance();
date.setTime(mesRavitaillements.get(i).getDate());
serie.add(new Day(date.get(Calendar.DAY_OF_MONTH), date.get(Calendar.MONTH), date.get(Calendar.YEAR)), lAu100);
}
if(serie.getItemCount() > 0)
{
return serie;
}
else
{
return null;
}
} |
Ensuite j ai ajoute mes series pour le graph comme ceci:
Code:
1 2 3 4 5 6 7 8 9
|
public void AjouterTimeSeries(TimeSeries pSerie, Color pCouleur)
{
if(pSerie != null)
{
coll.addSeries(pSerie);
rendu.setSeriesPaint(coll.getSeriesCount()-1, pCouleur);
}
} |
Et finalement j ai créé le graphique ainsi :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
public void CreerGraphique()
{
TimeSeriesCollection dataset = coll;
JFreeChart graph = ChartFactory.createTimeSeriesChart("Consommation Essence", "date", "l/100km", dataset, true, true, false);
XYPlot plot = graph.getXYPlot();
plot.setRenderer(rendu);
DateAxis axis = (DateAxis) plot.getDomainAxis();
axis.setDateFormatOverride(new SimpleDateFormat("dd-MMM-yyyy"));
if(pan != null)
{
remove(pan);
}
pan = new ChartPanel(graph);
add(pan);
revalidate();
} |
Le problème est que les dates affichées sur le graphique sont : 21-juin-2009, 28-juin-2009, 5-juil-2009, 12-juil-2009 au lieu de : 20-juil-2009, 25-juil-2009, 30-juil-2009, 15-aout-2009
Quelqu'un saurait il pourquoi ?
Merci d'avance a tout le monde