2
시리즈 세트에 대한 변경 사항, 즉 일련의 새로운 시리즈가 삽입되었거나 새로운 데이터 포인트가 시리즈에 추가되었음을 알리는 JFreeChart 객체를 구독하려면 어떻게해야합니까? 데이터 집합에 대한JFreeChart - 시리즈에 대한 변경 사항 수신
시리즈 세트에 대한 변경 사항, 즉 일련의 새로운 시리즈가 삽입되었거나 새로운 데이터 포인트가 시리즈에 추가되었음을 알리는 JFreeChart 객체를 구독하려면 어떻게해야합니까? 데이터 집합에 대한JFreeChart - 시리즈에 대한 변경 사항 수신
:
Dataset coll = new XYSeriesCollection();
coll.addChangeListener(new DatasetChangeListener() {
@Override
public void datasetChanged(DatasetChangeEvent arg0) {
// TODO Auto-generated method stub
}
});
또는 JFreeChart를 자체
:도 사이의 플롯과 끝의 시리즈 작동JFreeChart chart = createChart();
chart.addChangeListener(new ChartChangeListener() {
@Override
public void chartChanged(ChartChangeEvent arg0) {
// TODO Auto-generated method stub
}
});
그리고 나는 확신합니다.
편집 : 난 단지 새로운 시리즈를 추가하거나되지 않은 경우를 알고 싶습니다
final XYSeriesCollection coll = new XYSeriesCollection();
coll.addChangeListener(new DatasetChangeListener() {
private int numberOfSeries = -1;
@Override
public void datasetChanged(DatasetChangeEvent arg0) {
int numberOfSeriesNew = coll.getSeriesCount();
if (numberOfSeriesNew == numberOfSeries) {
// no series was added/removed
} else if (numberOfSeriesNew < numberOfSeries) {
// series was removed
numberOfSeries = numberOfSeriesNew;
} else {
// series was added
numberOfSeries = numberOfSeriesNew;
}
}
});
: 단지 추가/제거 시리즈를 수신하려면. 그 사건을 경청 할 방법이 있습니까? – Bober02
네, 위에서 보여준 것처럼 'DatasetChangeListener'를 사용하십시오. 계열 내 변경 사항이 DatasetChangeListener에도 전파된다고 생각하면 컬렉션의 계열 수를 모니터링 할 수 있습니다 (변경된 경우 시리즈 추가/제거). 'arg0.getSeries()'를 사용하여 어떤 시리즈가 추가/제거되었는지 확인할 수 있습니다. – brimborium
@ Bober02 내 편집을 참조하십시오. – brimborium