openjdk-jfx
openjdk-jfx copied to clipboard
StackedBarChart does not display negative values
the internal logic expects styleClass "negative" to be set, but as soon as a series is added the styleClass is reset to defaults.
public void testBarChart(Stage stage) throws Exception {
CategoryAxis xAxis = new CategoryAxis();
NumberAxis yAxis = new NumberAxis();
// not ok
StackedBarChart<String, Number> barChart1 = new StackedBarChart<String, Number>(xAxis, yAxis);
XYChart.Series<String, Number> series1 = new XYChart.Series<String, Number>();
series1.setName("Serie1");
series1.getData().add(new XYChart.Data<String, Number>("negative", -10.1));
barChart1.getData().add(series1);
// ok
StackedBarChart<String, Number> barChart2 = new StackedBarChart<String, Number>(xAxis, yAxis){
@Override protected void seriesChanged(ListChangeListener.Change<? extends Series> c) {}
};
XYChart.Series<String, Number> series2 = new XYChart.Series<String, Number>();
series2.setName("Serie2");
series2.getData().add(new XYChart.Data<String, Number>("negative", -20.2));
barChart2.getData().add(series2);
VBox vbox = new VBox(barChart1, barChart2);
Scene scene = new Scene(vbox, 500, 500);
stage.setScene(scene);
stage.show();
}