Task
I have a BarChart, which I have to fill with different data again and again. Data must be in a predefined order. Of course, I only want to change the data and not create a chart every time.
Problem
Once you have a category with a given name that already existed in the earlier data, the order is wrong.
I created an example. By clicking the "Insert To" button, a certain number of bars is added. After that the "static" bar is added.
The Paste After button adds a “static” panel first, and then the rest of the columns.
public class BarChartSample extends Application { int count = 1; @Override public void start(Stage stage) { final CategoryAxis xAxis = new CategoryAxis(); final NumberAxis yAxis = new NumberAxis(); final BarChart<String, Number> bc = new BarChart<String, Number>(xAxis, yAxis); bc.setAnimated(false);
When you run the program and click "Paste Until", you will get the following:

When you restart the program and click "Paste After", you will get the following:

When you restart the program and click "Paste Before" and then "Paste After", you will get the following:

which is wrong. It should be like this:

Is there a way to clear barcode memory? Obviously, setData is not enough.
I suspect that it has something to do with special deletion methods on the histogram and that the data was not completely deleted when adding new data. There are some dubious methods, such as "seriesBeingRemovedIsAdded" in the source code of the BarChart class in JavaFX.
Thank you for help!