본문 바로가기
자바

자바 자바fx 파이챠트 PieChart [북붙따라하기]

by 세상 모든 것 들은 그 자신을 위해 존재한다. 2021. 1. 8.

 PieChart 

사용 예제 ) 코드를 복붙 하여 실행해 보시기 바랍니다.

설명은  주석과 코드 아랫부분에  있습니다.

1. 메인 파일 예제입니다.(title 만 다르고 내용이 거의 변하지 않습니다.)

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class AppMain extends Application {
	@Override
	public void start(Stage primaryStage) throws Exception {
		Parent root = (Parent)FXMLLoader.load(getClass().getResource("main.fxml"));
		Scene scene = new Scene(root);
		
		primaryStage.setTitle("파이 챠트  예제 입니다.");
		primaryStage.setScene(scene);
		primaryStage.show();
		primaryStage.setAlwaysOnTop(true);
	}
	
	public static void main(String[] args) {
		launch(args);
	}
}

 

 

2. main.fxml  파일 예제입니다.

그대로 복붙 하여 테스트해보시면 됩니다.

<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.geometry.Insets?>
<?import javafx.scene.chart.PieChart?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.layout.HBox?>

<HBox prefHeight="508.0" prefWidth="742.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.171" fx:controller="MainHandler">
   <children>
      <PieChart fx:id="pieChart" prefHeight="357.0" prefWidth="555.0" style="-fx-border-color: red;">
         <HBox.margin>
            <Insets bottom="100.0" left="100.0" top="100.0" />
         </HBox.margin></PieChart>
      <Button fx:id="b" mnemonicParsing="false" onAction="#selB" prefHeight="50.0" prefWidth="120.0" text="파이그래프보기">
         <HBox.margin>
            <Insets top="450.0" />
         </HBox.margin>
      </Button>
   </children>
</HBox>

 

 

3. MainHandler.java 핸들러 파일입니다.

그대로 복붙 하여 테스트하시길 바랍니다.


import java.net.URL;
import java.util.ResourceBundle;

import javafx.collections.FXCollections;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.chart.PieChart;
import javafx.scene.control.Button;

public class MainHandler implements Initializable {
	
	//먹는 파이를 생각하면 되겠습니다.
	//파이를 어떻게 나눠야 되겠냐 에서 시작 되었습니다.
	@FXML 
	private PieChart pieChart;
	@FXML
	private Button b;
	
	@FXML
	private void selB(ActionEvent event) {
		pieChart.setData(FXCollections.observableArrayList(
				
				//열개의 항목을 퍼센트로 표시 했습니다.
				//앞의 숫자는 이름이고 뒤의 숫자는 % 입니다.
				//시작과 동시에 실행 할려면 initialize 에 넣으면 되겠습니다.
				
				new PieChart.Data("1", 10),		
				new PieChart.Data("2", 10),
				new PieChart.Data("3", 10),
				new PieChart.Data("4",10 ),
				new PieChart.Data("5", 10 ),
				new PieChart.Data("6", 10 ),
				new PieChart.Data("7", 10 ),
				new PieChart.Data("8", 10 ),
				new PieChart.Data("9", 10 ),
				new PieChart.Data("10", 10 )
		));
	}
	
	@Override
	public void initialize(URL location, ResourceBundle resources) {

	}
}







 

 

차트 중에서도 항목이 하나일 때 주로 사용되는 차트입니다.

항목은 추가해도 삭제해도 됩니다.

100%만 맞춰주면 되겠습니다.

다른 테이블 뷰나 리스트뷰 자료 출력 시 함께 보여주면 효과가 좋습니다.

 

아래는 실행 동영상입니다.

 

 

세상 모든 것들은 그 자신을 위해 존재한다.

728x90
반응형

댓글