[JFreeChart] DateAxis, autoRange => ajout de jours avant et après
Hello,
j'ai actuellement un dataset comme suit :
Code:
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
| final TimeSeries series = new TimeSeries(libelle);
int i = 0;
for (DateTime d : bean.getDates()) {
Day day = new Day(d.getDayOfMonth(), d.getMonthOfYear(),
d.getYear());
series.add(day, bean.getNombresFichiers().get(i));
i++;
}
DateAxis domain = new DateAxis("Date");
// domain.setDateFormatOverride(new SimpleDateFormat("dd/MM/yyyy"));
domain.setTickUnit(new DateTickUnit(DateTickUnitType.DAY, 1));
domain.setVerticalTickLabels(true);
NumberAxis range = new NumberAxis("Nombre d'occurences");
final TimeSeriesCollection dataset = new TimeSeriesCollection();
dataset.addSeries(series);
XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false);
renderer.setSeriesPaint(0, Color.black);
XYPlot plot = new XYPlot(dataset, domain, range, renderer);
plot.setBackgroundPaint(Color.lightGray);
plot.setDomainGridlinePaint(Color.darkGray);
plot.setRangeGridlinePaint(Color.darkGray);
plot.setDomainGridlinesVisible(false);
plot.setRangeMinorGridlinesVisible(false);
plot.setRangeGridlinesVisible(false);
plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
range.setAutoRange(true);
range.setLowerMargin(0.0);
range.setUpperMargin(0.0);
range.setTickLabelsVisible(true);
range.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); |
Des entiers en Y, et des dates en X.
Le truc c'est que là, j'ai beau définir une période par exemple du 01/01/2012 au 31/03/2012, une fois mon graphe généré , sur l'axe des abscisses , ma période a été automatiquement étendue du 28/12/2012 au 03/04/2012, ce que je ne veux pas.
J'ai essayé avec :
Code:
domain.setAutoRange(false);
Sauf que là, mon graphe est vide :(
Vous avez une idée?