如何在 JavaFX 中更改 PieChart 圖例的位置?


在餅圖中,我們將資料值表示為圓的扇形。每個扇形都與其他扇形區分開來(通常是透過顏色)。在 JavaFX 中,您可以透過例項化 **javafx.scene.chart.PieChart** 類來建立餅圖。

預設情況下,JavaFX 餅圖包含扇形的標籤和圖例 - 一個帶有顏色的條形,用於指定每個顏色表示的類別。

更改圖例的位置 -

PieChart 類有一個名為 **legendSide** 的屬性(繼承自 Chart 類)。這指定了圖表中圖例的位置(左、右、上、下)。您可以使用 **setLegendSide()** 方法將值設定為此屬性。此方法接受以下值之一作為引數 -

  • Side.BOTTOM

  • Side.TOP

  • Side.LEFT

  • Side.RIGHT

您可以透過呼叫 **setLegendSide()** 方法並傳遞適當的值作為引數來更改圖表中圖例的位置。

示例

import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.geometry.Side;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.chart.PieChart;
import javafx.scene.layout.StackPane;
public class PieChart_LegendPosition extends Application {
   @Override
   public void start(Stage stage) {
      //Creating a Pie chart
      PieChart pieChart = new PieChart();
      //Setting data
      ObservableList data = FXCollections.observableArrayList(
      new PieChart.Data("Work", 10),
      new PieChart.Data("Chores", 2),
      new PieChart.Data("Sleep", 8),
      new PieChart.Data("Others", 4));
      pieChart.setData(data);
      //Setting the legend on the left side of the chart
      pieChart.setLegendSide(Side.LEFT);
      //Creating a stack pane to hold the pie chart
      StackPane pane = new StackPane(pieChart);
      pane.setStyle("-fx-background-color: BEIGE");
      //Setting the Scene
      Scene scene = new Scene(pane, 595, 300);
      stage.setTitle("Pie Chart");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

輸出

更新於: 2020年5月20日

637 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告