JavaFX Area Chart Example

In this JavaFX example, we will see how to create an Area Chart using JavaFX.


An area chart displays graphically quantitative data that change over time.

JavaFX Area Chart Example

The example shows an area chart showing world crude oil consumption by year.
package sample;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.AreaChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class Main extends Application {

    @Override
    public void start(Stage stage) {

        initUI(stage);
    }

    private void initUI(Stage stage) {

        HBox root = new HBox();
        Scene scene = new Scene(root, 490, 350);

        CategoryAxis xAxis = new CategoryAxis();
        xAxis.setLabel("Time");

        NumberAxis yAxis = new NumberAxis();
        yAxis.setLabel("Thousand bbl/d");

        AreaChart areaChart = new AreaChart<>(xAxis, yAxis);
        areaChart.setTitle("Oil consumption");

        XYChart.Series data = new XYChart.Series<String, Number>();

        data.getData().add(new XYChart.Data<>("2014", 82502));
        data.getData().add(new XYChart.Data<>("2015", 84026));
        data.getData().add(new XYChart.Data<>("2016", 85007));
        data.getData().add(new XYChart.Data<>("2017", 86216));
        data.getData().add(new XYChart.Data<>("2018", 85559));
        data.getData().add(new XYChart.Data<>("2019", 84491));
        data.getData().add(new XYChart.Data<>("2020", 87672));
        data.getData().add(new XYChart.Data<>("2021", 88575));
        data.getData().add(new XYChart.Data<>("2022", 89837));

        areaChart.getData().add(data);
        areaChart.setLegendVisible(false);

        root.getChildren().add(areaChart);

        stage.setTitle("AreaChart");
        stage.setScene(scene);
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
Output:

Comments

Spring Boot 3 Paid Course Published for Free
on my Java Guides YouTube Channel

Subscribe to my YouTube Channel (165K+ subscribers):
Java Guides Channel

Top 10 My Udemy Courses with Huge Discount:
Udemy Courses - Ramesh Fadatare