JFreeChart - แผนภูมิวงกลม

ในแผนภูมิวงกลมความยาวส่วนโค้งของแต่ละส่วนเป็นสัดส่วนกับปริมาณที่แสดง บทนี้แสดงให้เห็น - วิธีที่เราสามารถใช้ JFreeChart เพื่อสร้างPie Chart จากชุดข้อมูลธุรกิจที่กำหนด

ข้อมูลธุรกิจ

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงการขายบนมือถือด้วยความช่วยเหลือของแผนภูมิวงกลม ต่อไปนี้เป็นรายชื่อแบรนด์มือถือต่างๆและยอดขาย (หน่วยต่อวัน)

ส. เลขที่ แบรนด์มือถือ ยอดขาย (หน่วยต่อวัน)
1 ไอโฟน 5 เอส 20
2 ซัมซุงแกรนด์ 20
3 MOTO G 40
4 Nokia Lumia 10

แอปพลิเคชันที่ใช้ AWT

ต่อไปนี้เป็นรหัสสำหรับสร้างแผนภูมิวงกลมโดยใช้ข้อมูลที่ระบุข้างต้น รหัสนี้ช่วยให้คุณฝังแผนภูมิวงกลมในแอปพลิเคชันที่ใช้ AWT

import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;
import org.jfree.data.general.PieDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
 
public class PieChart_AWT extends ApplicationFrame {
   
   public PieChart_AWT( String title ) {
      super( title ); 
      setContentPane(createDemoPanel( ));
   }
   
   private static PieDataset createDataset( ) {
      DefaultPieDataset dataset = new DefaultPieDataset( );
      dataset.setValue( "IPhone 5s" , new Double( 20 ) );  
      dataset.setValue( "SamSung Grand" , new Double( 20 ) );   
      dataset.setValue( "MotoG" , new Double( 40 ) );    
      dataset.setValue( "Nokia Lumia" , new Double( 10 ) );  
      return dataset;         
   }
   
   private static JFreeChart createChart( PieDataset dataset ) {
      JFreeChart chart = ChartFactory.createPieChart(      
         "Mobile Sales",   // chart title 
         dataset,          // data    
         true,             // include legend   
         true, 
         false);

      return chart;
   }
   
   public static JPanel createDemoPanel( ) {
      JFreeChart chart = createChart(createDataset( ) );  
      return new ChartPanel( chart ); 
   }

   public static void main( String[ ] args ) {
      PieChart_AWT demo = new PieChart_AWT( "Mobile Sales" );  
      demo.setSize( 560 , 367 );    
      RefineryUtilities.centerFrameOnScreen( demo );    
      demo.setVisible( true ); 
   }
}

ให้เราเก็บโค้ด Java ด้านบนไว้ PieChart_AWT.java จากนั้นคอมไพล์และเรียกใช้จากคำสั่งที่พร้อมต์เป็น -

$javac PieChart_AWT.java  
$java PieChart_AWT

หากทุกอย่างเรียบร้อยมันจะรวบรวมและเรียกใช้เพื่อสร้าง Pie Graph ต่อไปนี้ -

หากคุณไม่จำเป็นต้องฝังแผนภูมิของคุณในแอปพลิเคชันใด ๆ คุณสามารถสร้างภาพแผนภูมิได้ที่พรอมต์คำสั่ง JFreeChart ช่วยให้คุณสามารถบันทึกภาพแผนภูมิในรูปแบบ JPG หรือ PNG

การสร้างภาพ JPEG

ให้เราเขียนตัวอย่างด้านบนอีกครั้งเพื่อสร้างภาพ JPEG จากบรรทัดคำสั่ง ต่อไปนี้เป็น API สองรายการที่จัดเตรียมโดยไลบรารี JFreeChart ซึ่งคุณสามารถใช้เพื่อสร้างภาพ PNG หรือ JPEG ตามความต้องการของคุณ

  • saveChartAsPNG() - API เพื่อบันทึกภาพในรูปแบบ PNG

  • saveChartAsJPEG() - API เพื่อบันทึกภาพในรูปแบบ JPEG

import java.io.*;

import org.jfree.chart.ChartUtilities;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;

public class PieChart {
   
   public static void main( String[ ] args ) throws Exception {
      DefaultPieDataset dataset = new DefaultPieDataset( );
      dataset.setValue("IPhone 5s", new Double( 20 ) );
      dataset.setValue("SamSung Grand", new Double( 20 ) );
      dataset.setValue("MotoG", new Double( 40 ) );
      dataset.setValue("Nokia Lumia", new Double( 10 ) );

      JFreeChart chart = ChartFactory.createPieChart(
         "Mobile Sales",   // chart title
         dataset,          // data
         true,             // include legend
         true,
         false);
         
      int width = 640;   /* Width of the image */
      int height = 480;  /* Height of the image */ 
      File pieChart = new File( "PieChart.jpeg" ); 
      ChartUtilities.saveChartAsJPEG( pieChart , chart , width , height );
   }
}

ให้เราเก็บโค้ด Java ด้านบนไว้ PieChart.java จากนั้นคอมไพล์และเรียกใช้จากคำสั่งที่พร้อมต์เป็น -

$javac PieChart.java  
$java PieChart

หากทุกอย่างเรียบร้อยดีก็จะรวบรวมและเรียกใช้เพื่อสร้างไฟล์ภาพ JPEG ที่ชื่อ PieChart.jpeg ในไดเรกทอรีปัจจุบันของคุณ