如何在 JavaFX 中创建带有两个参数的气泡图?
javafxobject oriented programmingprogramming更新于 2025/4/13 18:52:17
气泡图接受一系列数据点 (x, y) 作为输入值,并为给定系列中的数据点创建气泡。在 JavaFX 中,您可以通过实例化 javafx.scene.chart.BubbleChart 类来创建气泡图。
通常,在所有 X-Y 图中,数据点绘制两个值 (x, y)。在气泡图中,有一个第三个值,由气泡的半径表示。此图表在绘制 3 维数据点时非常方便。
无论如何,第三个值不是强制性的,它只是可选的。与任何其他 XY 图表一样,您可以创建带有两个值的气泡图。
示例
以下是一个 JavaFX 示例,演示了如何创建带有两个值的气泡图 −
import javafx.application.Application; import javafx.geometry.Insets; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.scene.chart.BubbleChart; import javafx.scene.chart.NumberAxis; import javafx.scene.chart.XYChart; import javafx.scene.layout.StackPane; public class BubbleChart_TwoParams extends Application { public void start(Stage stage) { //创建 X 轴和 Y 轴 NumberAxis xAxis = new NumberAxis(5, 25, 5); NumberAxis yAxis = new NumberAxis(50, 90, 5); //为轴设置标签 xAxis.setLabel("温度 °C"); yAxis.setLabel("冰淇淋销售额(美元)"); //创建散点图 BubbleChart bubbleChart = new BubbleChart(xAxis, yAxis); //为散点图准备数据 XYChart.Series series = new XYChart.Series(); series.getData().add(new XYChart.Data(15.2, 72.79)); series.getData().add(new XYChart.Data(8.39, 83.97)); series.getData().add(new XYChart.Data(20.6, 67.14)); series.getData().add(new XYChart.Data(15.8, 80.32)); series.getData().add(new XYChart.Data(10.4, 87.27)); //将数据设置为散点图 bubbleChart.getData().add(series); //将标题设置为散点图 //scatterChart.setTitle("Ice Cream Sales vs Temperature"); //将名称设置为系列 series.setName("Temperatue vs Icecream Sales"); //创建一个堆栈窗格来保存图表 StackPane pane = new StackPane(bubbleChart); pane.setPadding(new Insets(15, 15, 15, 15)); pane.setStyle("-fx-background-color: BEIGE"); //设置场景 Scene scene = new Scene(pane, 595, 300); stage.setTitle("Bubble Chart"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }