JavaFX - 图表

通常,图表是数据的图形表示.有各种各样的图表来表示数据,例如条形图,饼图,折线图,散点图,等.

JavaFX提供对各种

每个图表由以下表示:一个类和所有这些图表属于包 javafx.scene.chart .名为 Chart 的类是JavaFX中所有图表的基类, XYChart 是在XY平面上绘制的所有图表的基类.

图表

创建图表

要创建图表,您需要 : 去;

  • 定义图表的轴

  • 实例化相应的类

  • 准备并将数据传递到图表

实例化各个类

要创建图表,请实例化其各自的类.例如,如果要创建折线图,则需要实例化名为 Line 的类,如下所示 :

LineChart linechart = new LineChart(xAxis,yAxis);

如上面的代码所示,在实例化时,你需要传递两个分别代表图表X轴和Y轴的对象.

定义轴

通常,图表的轴可以用 : 表示;

  • 人口,年龄

  • 等数字

  • 类别,例如一周中的天数,国家.

在JavaFX中,轴是表示X或Y轴的抽象类.它有两个子类来定义每种类型的轴,即 CategoryAxis NumberAxis ,如下图所示 :

定义轴

类别轴 : 通过实例化此类,您可以定义(创建)X轴或Y轴,每个值代表一个类别.您可以通过实例化此类来定义类别轴,如下所示 :

 CategoryAxis xAxis = new CategoryAxis();

对于此轴,您需要设置类别列表并在轴上标注,如下所示 :

 //设置类别列表. 
 xAxis.setCategories(FXCollections.< String> observableArrayList 
(Arrays.asList("n ame1","name2"......))); 
//为轴设置标签
 xAxis.setLabel("轴名称");

NumberAxis : 通过实例化此类,您可以定义(创建)X轴或Y轴,每个值表示一个数值.你可以使用任何数字类型 Axis,Long,Double,BigDecimal 等.你可以通过实例化这个类来定义一个数字轴,如下所示 :

//定义轴
 NumberAxis yAxis = new NumberAxis(); 
//将标签设置到轴
 yAxis.setLabel("轴名称");

将数据传递到XY图表

所有XY图表都沿XY平面表示.要绘制图表中的一组点,我们需要指定一系列XY坐标.

< X,Y> 类> javafx.scene.chart 包是一个使用它的类,可以将数据发送到图表.该类包含一个可观察的命名系列列表.您可以使用 XYChart.Series 类的 getData()方法获取此列表,如下所示 :

 ObservableList list = series.getData();

其中,系列 XYChart.Series 类的对象.您可以使用 add()方法将数据添加到此列表中,如下所示 :

 list.add(new XYChart.Data(x轴数据,y轴数据));

这两行可以一起写,如下所示 :

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中创建LineChart节点.

3Area Chart

面积图用于绘制基于区域的图表.它绘制给定系列点与轴之间的区域.通常,此图表用于比较两个数量.

在JavaFX中,面积图由名为 AreaChart 的类表示.该类属于包 javafx.scene.chart .通过实例化该类,您可以在JavaFX中创建一个AreaChart节点.

4条形图

条形图用于表示使用矩形条的分组数据.这些条的长度描绘了这些值.条形图中的条形可以垂直或水平绘制.

在JavaFX中,条形图由名为 BarChart 的类表示.该类属于包 javafx.scene.chart .通过实例化这个类,您可以在JavaFX中创建一个BarChart节点.

5气泡图

气泡图用于制作三维数据.第三个维度将由气泡的大小(半径)表示.

在JavaFX中,气泡图由名为 BubbleChart 的类表示.该类属于包 javafx.scene.chart .通过实例化此类,您可以在JavaFX中创建BubbleChart节点.

6散点图

散点图是一种图形,它使用在笛卡尔平面中绘制的两个变量的值.它通常用于找出两个变量之间的关系.

在JavaFX中,Scatter图表由名为 ScatterChart 的类表示.该类属于包 javafx.scene.chart .通过实例化这个类,您可以在JavaFX中创建一个ScatterChart节点.

7堆积面积图

在JavaFX中,堆积区域图表由名为 StackedAreaChart 的类表示.

此类属于包 javafx.scene.chart .通过实例化此类,您可以在JavaFX中创建StackedAreaChart节点.

8堆积条形图

在JavaFX中,堆积条形图由名为 StackedBarChart 的类表示.

此类属于包 javafx.scene.chart .通过实例化此类,您可以在JavaFX中创建StackedBarChart节点.