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
|
NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
domainAxis.setAutoRange(false);
rangeAxis.setAutoRange(false);
XYSeriesCollection dataset = getDisplayDataset();
double minimum = Double.POSITIVE_INFINITY,
yminimum = Double.POSITIVE_INFINITY;
double maximum = Double.NEGATIVE_INFINITY,
ymaximum = Double.NEGATIVE_INFINITY;
int seriesCount = dataset.getSeriesCount();
double lvalue, ylvalue;
double uvalue, yuvalue;
IntervalXYDataset intervalXYData = (IntervalXYDataset) dataset;
for (int series = 0; series < seriesCount; series++) {
XYSeriesCassis serieCassis = (XYSeriesCassis)dataset.getSeries(series);
if (serieCassis.isVisible()){
int itemCount = intervalXYData.getItemCount(series);
for (int item = 0; item < itemCount; item++) {
lvalue = intervalXYData.getStartXValue(series, item);
uvalue = intervalXYData.getEndXValue(series, item);
minimum = Math.min(minimum, lvalue);
maximum = Math.max(maximum, uvalue);
ylvalue = intervalXYData.getStartYValue(series, item);
yuvalue = intervalXYData.getEndYValue(series, item);
yminimum = Math.min(yminimum, ylvalue);
ymaximum = Math.max(ymaximum, yuvalue);
}
}
}
double xmarge = (maximum - minimum ) * 0.05 ;
double ymarge = (ymaximum - yminimum ) * 0.05 ;
domainAxis.setRange(new Range(minimum - xmarge, maximum + xmarge),
true, true);
rangeAxis.setRange(new Range(yminimum -ymarge , ymaximum + ymarge),
true, true); |
Partager