Wie lösche ich in einem Javafx-Balkendiagramm hinzugefügten Text?

Ich füge oben in den Balken Text ein (der Wert jedes Balkens). Es funktioniert, aber das Problem ist, dass ich diesen Text jedes Mal entfernen möchte, wenn ich das Diagramm aktualisiere. Tatsächlich bleibt der Text nach der Aktualisierung der Daten erhalten.

Für das erste Diagramm wird es korrekt angezeigt, da keine vorherigen Daten vorhanden sind.

Aber nachdem ich die Daten des Diagramms aktualisiert habe, erhalte ich Folgendes (es funktioniert, aber der zuvor hinzugefügte Text bleibt erhalten ...):

Ich habe den falschen Teil rot hervorgehoben

Ich füge den Text oben auf jeder Leiste mit dieser Methode hinzu:

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
          )
        );
      }
    });
}

Mein vollständiger Code ist verfügbaron Gist

Noch keine Antwort auf diese ...

Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage