public void refresh() { total.setText(format(totals.getCurrentValue())); totalMin.setText("(" + format(totals.getMin())); totalMax.setText(" " + format(totals.getMax()) + " "); totalAvg.setText(format(totals.getAvg()) + ")"); final XYPlot plot = (XYPlot) chart.getChart().getPlot(); final TimeTableXYDataset dataset = (TimeTableXYDataset) plot.getDataset(); dataset.clear(); final Date now = new Date(); if (parts.isEmpty()) { fillDataset(dataset, totals, now); } else { for (final MeasurementsDisplay<T> m : parts.values()) { final Measurements<T> measurements = m.measurements; fillDataset(dataset, measurements, now); m.label.setText(format(m.measurements.getCurrentValue())); m.labelMin.setText("(" + format(m.measurements.getMin())); m.labelMax.setText(" " + format(m.measurements.getMax()) + " "); m.labelAvg.setText(format(m.measurements.getAvg()) + ")"); } } }