JavaFX-チャート
一般に、グラフはデータのグラフィック表現です。データを表すには、次のようなさまざまな種類のグラフがあります。Bar Chart, Pie Chart, Line Chart, Scatter Chart, 等
JavaFXはさまざまなサポートを提供します Pie Charts そして XY Charts。XY平面に表示されるグラフには次のものがあります。AreaChart, BarChart, BubbleChart, LineChart, ScatterChart, StackedAreaChart, StackedBarChart, 等
各チャートはクラスで表され、これらのチャートはすべてパッケージに属します javafx.scene.chart。名前の付いたクラスChart JavaFXのすべてのチャートの基本クラスであり、 XYChart は、XY平面に描画されるすべてのチャートの基本クラスです。
チャートの作成
チャートを作成するには、次のことを行う必要があります。
- チャートの軸を定義します
- それぞれのクラスをインスタンス化します
- データを準備してチャートに渡します
それぞれのクラスのインスタンス化
チャートを作成するには、それぞれのクラスをインスタンス化します。たとえば、折れ線グラフを作成する場合は、という名前のクラスをインスタンス化する必要があります。Line 次のように-
LineChart linechart = new LineChart(xAxis, yAxis);
上記のコードで観察されたように、インスタンス化中に、チャートのX軸とY軸をそれぞれ表す2つのオブジェクトを渡す必要があります。
軸の定義
一般に、チャートの軸は次のように表すことができます。
- 人口、年齢、
- 週の日数、国などのカテゴリ。
JavaFXでは、軸はX軸またはY軸を表す抽象クラスです。各タイプの軸を定義する2つのサブクラスがあります。CategoryAxis そして NumberAxis 次の図に示すように-
Category Axis−このクラスをインスタンス化することにより、各値がカテゴリを表すX軸またはY軸を定義(作成)できます。以下に示すように、このクラスをインスタンス化することにより、カテゴリ軸を定義できます。
CategoryAxis xAxis = new CategoryAxis();
この軸には、以下に示すように、カテゴリのリストとラベルを軸に設定する必要があります-
//setting the list of categories.
xAxis.setCategories(FXCollections.<String>observableArrayList
(Arrays.asList("n ame1", "name2"….)));
//Setting label to the axis
xAxis.setLabel("name of the axis ");
NumberAxis−このクラスをインスタンス化することにより、各値が数値を表すX軸またはY軸を定義(作成)できます。これで任意の数値タイプを使用できますAxis, Long, Double, BigDecimal、など。このクラスを次のようにインスタンス化することにより、数値軸を定義できます。
//Defining the axis
NumberAxis yAxis = new NumberAxis();
//Setting labelto the axis
yAxis.setLabel("name of the axis");
XYチャートへのデータの受け渡し
すべてのXYチャートは、XY平面に沿って表されます。チャートに点のセットをプロットするには、一連のXY座標を指定する必要があります。
ザ・ <X,Y> のクラス javafx.scene.chartパッケージは、チャートにデータを送信するために使用するクラスです。このクラスは、名前付きシリーズの監視可能なリストを保持します。このリストは、getData() の方法 XYChart.Series 以下に示すクラス-
ObservableList list = series.getData();
どこ、 series の目的は XYChart.Seriesクラス。を使用してこのリストにデータを追加できますadd() 次のような方法-
list.add(new XYChart.Data(x-axis data, y-axis data));
これらの2行は、以下に示すように一緒に書くことができます-
series.getData().add(new XYChart.Data(x-axis data, y-axis data));
次の表に、JavaFXが提供するさまざまなチャート(クラス)の説明を示します。
S.No | チャートと説明 |
---|---|
1 | 円グラフ
円グラフは、さまざまな色の円のスライスとしての値の表現です。これらのスライスにはラベルが付けられ、各スライスに対応する値がグラフに表示されます。 JavaFXでは、円グラフは次の名前のクラスで表されます。 PieChart。このクラスはパッケージに属していますjavafx.scene.chart。 |
2 | 折れ線グラフ
折れ線グラフまたは折れ線グラフは、直線セグメントで接続された一連のデータポイント(マーカー)として情報を表示します。折れ線グラフは、同じ時間頻度でデータがどのように変化するかを示しています。 JavaFXでは、折れ線グラフは次の名前のクラスで表されます。 LineChart。このクラスはパッケージに属していますjavafx.scene.chart。このクラスをインスタンス化することにより、JavaFXで折れ線グラフノードを作成できます。 |
3 | 面グラフ
面グラフは、面積ベースのグラフを描画するために使用されます。与えられた一連の点と軸の間の領域をプロットします。一般に、このチャートは2つの量を比較するために使用されます。 JavaFXでは、面グラフは次の名前のクラスで表されます。 AreaChart。このクラスはパッケージに属していますjavafx.scene.chart。このクラスをインスタンス化することにより、JavaFXでAreaChartノードを作成できます。 |
4 | 棒グラフ
棒グラフは、長方形の棒を使用してグループ化されたデータを表すために使用されます。これらのバーの長さは値を表しています。棒グラフの棒は、垂直方向または水平方向にプロットできます。 JavaFXでは、棒グラフは次の名前のクラスで表されます。 BarChart。このクラスはパッケージに属していますjavafx.scene.chart。このクラスをインスタンス化することにより、JavaFXで棒グラフノードを作成できます。 |
5 |
バブルチャート
バブルチャートは、3次元データをプラットするために使用されます。3番目の次元は、泡のサイズ(半径)で表されます。 JavaFXでは、バブルチャートは次の名前のクラスで表されます。 BubbleChart。このクラスはパッケージに属していますjavafx.scene.chart。このクラスをインスタンス化することにより、JavaFXでBubbleChartノードを作成できます。 |
6 | 散布図
散布図は、デカルト平面にプロットされた2つの変数の値を使用するグラフの一種です。これは通常、2つの変数間の関係を見つけるために使用されます。 JavaFXでは、散布図は次の名前のクラスで表されます。 ScatterChart。このクラスはパッケージに属していますjavafx.scene.chart。このクラスをインスタンス化することにより、JavaFXでScatterChartノードを作成できます。 |
7 | 積み上げ面グラフ
JavaFXでは、積み上げ面グラフは、という名前のクラスで表されます。 StackedAreaChart。 このクラスはパッケージに属しています javafx.scene.chart。このクラスをインスタンス化することにより、JavaFXでStackedAreaChartノードを作成できます。 |
8 | 積み上げ棒グラフ
JavaFXでは、積み上げ棒グラフは、という名前のクラスで表されます。 StackedBarChart。 このクラスはパッケージに属しています javafx.scene.chart。このクラスをインスタンス化することにより、JavaFXでStackedBarChartノードを作成できます。 |