我知道我可以使用以下代码设置图例项的设置颜色:
for (Node n : chart.lookupAll(".bar-legend-symbol.default-color0")) {
n.setStyle("-fx-background-color: " + "red"+ ";");
}
但它只有在我第一次将数据添加到图表然后再将图表添加到场景时才有效。像这样:
final XYChart.Series<String, Number> series = new XYChart.Series<String, Number>();
XYChart.Data<String, Number>bar = new XYChart.Data<String, Number>("test", 120);
series.getData().add(bar);
chart.getData().add(series);
chartFxPanel.setScene(new Scene(chart));
for (Node n : chart.lookupAll(".bar-legend-symbol.default-color0")) {
n.setStyle("-fx-background-color: " + "red"+ ";");
}
但是我想在图表添加到场景后将数据添加到图表中。如果我这样做,它不会改变图例项的颜色:
final XYChart.Series<String, Number> series = new XYChart.Series<String, Number>();
XYChart.Data<String, Number>bar = new XYChart.Data<String, Number>("test", 120);
series.getData().add(bar);
chartFxPanel.setScene(new Scene(chart));
chart.getData().add(series);
for (Node n : chart.lookupAll(".bar-legend-symbol.default-color0")) {
n.setStyle("-fx-background-color: " + "red"+ ";");
}
那么如何更改图例项的颜色?