• Startseite
  • Tutorials
  • Kontakt
  • Mein Account
Panjutorials
  • Startseite
  • Tutorials
  • Kontakt
  • Mein Account

(Stacked) Area Chart in JavaFX

In diesem Artikel behandeln wir das Area Chart in JavaFX. Dabei handelt es sich um ein weiteres zwei Achsen Chart. Es unterscheidet sich zum Liniendiagramm hauptsächlich dadurch, dass unter der Linie die Linienfarbe auch ausgefüllt wird, bis zum 0 Punkt, bzw dem niedrigsten Punkt.

Beispiel für Area Chart in JavaFX.


package application;
	
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.chart.AreaChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;


public class Main extends Application {
	@Override
	public void start(Stage primaryStage) {
		try {
			
			// Setzen des Titels unserer Stage
			primaryStage.setTitle("Area Chart Beispiel");
			// Anlegen der Achsen und deren Reichweiten
	        final NumberAxis xAxis = new NumberAxis(2012, 2015, 1);
	        final NumberAxis yAxis = new NumberAxis(0, 20, 5);
	        // Anlegen und Initialsiieren des Area Charts, mit den Achsen
	        final AreaChart<Number,Number> areaChart = 
	            new AreaChart<Number,Number>(xAxis,yAxis);
	        xAxis.setForceZeroInRange(true);
	        
	        // Titel des Area Chart der oben angezeigt wird.
	        areaChart.setTitle("Entwicklung");       

	        // Die Series in der die Datensätze eingefügt werden
	        XYChart.Series series1 = new XYChart.Series();
	        series1.setName("Umsatz");
	        series1.getData().add(new XYChart.Data(2012, 10));
	        series1.getData().add(new XYChart.Data(2013, 13));
	        series1.getData().add(new XYChart.Data(2014, 16));
	        series1.getData().add(new XYChart.Data(2015, 18));
	        
	        XYChart.Series series2 = new XYChart.Series();
	        series2.setName("Gewinn");
	        series2.getData().add(new XYChart.Data(2012, 2));
	        series2.getData().add(new XYChart.Data(2013, 3));
	        series2.getData().add(new XYChart.Data(2014, 4));
	        series2.getData().add(new XYChart.Data(2015, 5));
	        
	        Scene scene  = new Scene(areaChart,640,480);
	        areaChart.getData().addAll(series1, series2);
	        primaryStage.setScene(scene);
	        primaryStage.show();
		} catch(Exception e) {
			e.printStackTrace();
		}
	}
	
	public static void main(String[] args) {
		launch(args);
	}
}

Damit erhalten wir folgendes Programm:

[image img_id=”6237″ alt=”area Chart Beispiel” width=”300″ height=”243″]

Außer der Area Chart gibt es noch die Stacked Area Chart. In der die Einträge quasi aufeinandergestapelt werden.

Beispiel für Stacked Area Chart in JavaFX


// Setzen des Titels unserer Stage
primaryStage.setTitle("Stacked Area Chart Beispiel");
// Anlegen der Achsen und deren Reichweiten
final NumberAxis xAxis = new NumberAxis(2012, 2015, 1);
final NumberAxis yAxis = new NumberAxis(0, 30, 5);
// Anlegen und Initialsiieren des Area Charts, mit den Achsen
final StackedAreaChart<Number,Number> stackedAreaChart = 
    new StackedAreaChart<Number,Number>(xAxis,yAxis);
xAxis.setForceZeroInRange(true);

// Titel des Area Chart der oben angezeigt wird.
stackedAreaChart.setTitle("Gesamtkosten");       

// Die Series in der die Datensätze eingefügt werden
XYChart.Series series1 = new XYChart.Series();
series1.setName("Kosten Produkt A");
series1.getData().add(new XYChart.Data(2012, 10));
series1.getData().add(new XYChart.Data(2013, 13));
series1.getData().add(new XYChart.Data(2014, 16));
series1.getData().add(new XYChart.Data(2015, 18));

XYChart.Series series2 = new XYChart.Series();
series2.setName("Kosten Produkt B");
series2.getData().add(new XYChart.Data(2012, 2));
series2.getData().add(new XYChart.Data(2013, 3));
series2.getData().add(new XYChart.Data(2014, 4));
series2.getData().add(new XYChart.Data(2015, 5));

Scene scene  = new Scene(stackedAreaChart,640,480);
stackedAreaChart.getData().addAll(series1, series2);
primaryStage.setScene(scene);
primaryStage.show();

Das Ergebnis ist folgendes:

Stacked Area Chart in JavaFX