Как очистить текст, добавленный в диаграмму javafx?
Я добавляю текст в верхнюю часть столбцов (значение каждого столбца). Это работает, но проблема в том, что я хочу удалять этот текст каждый раз, когда обновляю диаграмму. Фактически, текст остается после обновления данных.
Для первого графика, так как нет предыдущих данных, он отображается правильно.
Но после того, как я обновляю данные диаграммы, вот что я получаю (это работает, но предыдущий добавленный текст остается ...):
Я добавляю текст в верхней части каждой панели следующим способом:
private void displayLabelForData(XYChart.Data<String, Number> data) {
final Node node = data.getNode();
final Text dataText = new Text(data.getYValue() + "");
node.parentProperty().addListener(new ChangeListener<Parent>() {
@Override public void changed(ObservableValue<? extends Parent> ov, Parent oldParent, Parent parent) {
Group parentGroup = (Group) parent;
parentGroup.getChildren().add(dataText);
}
});
node.boundsInParentProperty().addListener(new ChangeListener<Bounds>() {
@Override public void changed(ObservableValue<? extends Bounds> ov, Bounds oldBounds, Bounds bounds) {
dataText.setLayoutX(
Math.round(
bounds.getMinX() + bounds.getWidth() / 2 - dataText.prefWidth(-1) / 2
)
);
dataText.setLayoutY(
Math.round(
bounds.getMinY() - dataText.prefHeight(-1) * 0.5
)
);
}
});
}
Мой полный код доступенна Gist
До сих пор нет ответа на это ...
Спасибо !