📜  JavaFX 柱状图

📅  最后修改于: 2020-10-14 07:22:08             🧑  作者: Mango

JavaFX条形图

通常,条形图可以定义为使用矩形条进行数据表示的图。条的长度表示绘制在其中一根轴上的精确数值数据值。矩形条可以在图表上水平或垂直绘制。

在下图中,条形图显示了工程各个分支中的学生人数。 X轴是类别轴,显示不同的分支,而Y轴是数字轴,显示特定分支中的学生人数。

在JavaFX中,类javafx.scene.chart.BarChart表示条形图。我们需要实例化此类以创建条形图。

物产

下表描述了该类的属性以及setter方法。

Property Description Setter Method
barGap This is a double type property. It represents the gap between the bars of the same category. setBarGap(Double value)
categoryGap This is a double type property. It represents the gap between the different category. setCategoryGap(Double value)

建设者

该类中有三个构造函数。

  • 公共条形图(轴X轴,轴Yaxis):用指定的轴创建BarChart的新实例。
  • 公共条形图(轴X轴,轴Yaxis,ObservableList >数据): 使用指定的轴和数据创建BarChart的新实例。
  • 公共条形图(轴X轴,轴Yaxis,ObservableList >数据,为double categoryGap)): 使用指定的轴,数据和类别间隙创建BarChart的新实例。

在下面的示例中,我们显示了不同货币与美元之间的转换。

package application;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.stage.Stage;
public class BarChartExample extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
// TODO Auto-generated method stub
//Defining string to label XAxis 
String Euro = "Euro";
String Pound = "British Pound";
String A_Dollar = "Austrelian Dollar";
String frenc= "Swis Franc";

//Configuring category and NumberAxis 
CategoryAxis xaxis= new CategoryAxis();
NumberAxis yaxis = new NumberAxis(0.1,2,0.1);
xaxis.setLabel("Currency");
yaxis.setLabel("Dollar price");

//Configuring BarChart 
BarChart bar = new BarChart(xaxis,yaxis);
bar.setTitle("Dollar Conversion chart");

//Configuring Series for XY chart 
XYChart.Series series = new XYChart.Series<>();
series.getData().add(new XYChart.Data(Euro,0.83));
series.getData().add(new XYChart.Data(Pound,0.73));
    series.getData().add(new XYChart.Data(frenc,1.00));
series.getData().add(new XYChart.Data(A_Dollar,1.32));

//Adding series to the barchart 
bar.getData().add(series);

// configuring group and scene 
Group root = new Group();
root.getChildren().add(bar);
Scene scene = new Scene(root,600,400);
primaryStage.setScene(scene);
primaryStage.setTitle("BarChart Example");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}