我有一个 JavaFX AreaChart,在我的 FXML 文件中定义
<AreaChart id="myAreaChart"
onMouseClicked="#handleAreaChartMouseClicked"
GridPane.columnIndex="0"
GridPane.rowIndex="0"
fx:id="myAreaChart" >
<xAxis>
<NumberAxis>
</NumberAxis>
</xAxis>
<yAxis>
<NumberAxis></NumberAxis>
</yAxis>
</AreaChart>
它是用 css 设计的,我在启动方法中从 css\myAreaChartStyle.css 加载它
...
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
primaryStage.setTitle("Hello World");
Scene cur = new Scene(root, 300, 275);
cur.getStylesheets().addAll(Main.class.getResource
("css\\myAreaChartStyle.css").toExternalForm());
...
样式有效,我的图表中有 3 个区域,它们的样式是
.default-color0.chart-area-symbol { -fx-background-color: #0000ff; }
.default-color0.chart-series-area-fill { -fx-fill: #0000ff; }
.default-color0.chart-series-area-line { -fx-fill: #0000ff; }
.default-color1.chart-area-symbol { -fx-background-color: #0000ff; }
.default-color1.chart-series-area-fill { -fx-fill: #0000ff; }
.default-color1.chart-series-area-line { -fx-fill: #0000ff; }
.default-color2.chart-area-symbol { -fx-background-color: #0000ff; }
.default-color2.chart-series-area-fill { -fx-fill: #0000ff; }
.default-color2.chart-series-area-line { -fx-fill: #0000ff; }
这是我的问题。我想在我的图表中启用动画,我的意思是,我希望我的区域的颜色从蓝色平滑地变为白色,例如,这将是一种动画过渡。我试图从我的 Controller 类更改 css,但它没有按我想要的方式工作。那么,如何为我的图表制作动画?
最佳答案
查看 Ensenble 下提供的图表示例。 http://www.oracle.com/technetwork/java/javafx/samples/index.html
关于java - JavaFX 中的动画图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20440101/