JFreeChart - बार चार्ट

यह अध्याय दर्शाता है कि आप JFreeChart का उपयोग कैसे कर सकते हैं Bar Chart व्यवसाय डेटा के दिए गए सेट से।

एक बार चार्ट विभिन्न श्रेणियों में तुलना दिखाने के लिए विभिन्न अभिविन्यास (क्षैतिज या ऊर्ध्वाधर) सलाखों का उपयोग करता है। चार्ट का एक अक्ष (डोमेन अक्ष) विशिष्ट डोमेन की तुलना करता है, और अन्य अक्ष (रेंज अक्ष) असतत मूल्यों का प्रतिनिधित्व करता है।

व्यापार डेटा

निम्नलिखित उदाहरण में बार चार्ट की सहायता से विभिन्न कार आँकड़ों को दर्शाया गया है। निम्नलिखित कार ब्रांडों की सूची के साथ-साथ उनकी अलग-अलग विशेषताएं हैं, जिन्हें हम बार चार्ट का उपयोग करके दिखाएंगे -

गाड़ी स्पीड प्रयोक्ता श्रेणी millage सुरक्षा
Fiat 1.0 3.0 5.0 5.0
Audi 5.0 6.0 10.0 4.0
Ford 4.0 2.0 3.0 6.0

AWT आधारित अनुप्रयोग

निम्नलिखित दी गई जानकारी से बार चार्ट बनाने के लिए कोड है। यह कोड आपको किसी भी AWT आधारित एप्लिकेशन में बार चार्ट एम्बेड करने में मदद करता है।

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel; 
import org.jfree.chart.JFreeChart; 
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.CategoryDataset; 
import org.jfree.data.category.DefaultCategoryDataset; 
import org.jfree.ui.ApplicationFrame; 
import org.jfree.ui.RefineryUtilities; 

public class BarChart_AWT extends ApplicationFrame {
   
   public BarChart_AWT( String applicationTitle , String chartTitle ) {
      super( applicationTitle );        
      JFreeChart barChart = ChartFactory.createBarChart(
         chartTitle,           
         "Category",            
         "Score",            
         createDataset(),          
         PlotOrientation.VERTICAL,           
         true, true, false);
         
      ChartPanel chartPanel = new ChartPanel( barChart );        
      chartPanel.setPreferredSize(new java.awt.Dimension( 560 , 367 ) );        
      setContentPane( chartPanel ); 
   }
   
   private CategoryDataset createDataset( ) {
      final String fiat = "FIAT";        
      final String audi = "AUDI";        
      final String ford = "FORD";        
      final String speed = "Speed";        
      final String millage = "Millage";        
      final String userrating = "User Rating";        
      final String safety = "safety";        
      final DefaultCategoryDataset dataset = 
      new DefaultCategoryDataset( );  

      dataset.addValue( 1.0 , fiat , speed );        
      dataset.addValue( 3.0 , fiat , userrating );        
      dataset.addValue( 5.0 , fiat , millage ); 
      dataset.addValue( 5.0 , fiat , safety );           

      dataset.addValue( 5.0 , audi , speed );        
      dataset.addValue( 6.0 , audi , userrating );       
      dataset.addValue( 10.0 , audi , millage );        
      dataset.addValue( 4.0 , audi , safety );

      dataset.addValue( 4.0 , ford , speed );        
      dataset.addValue( 2.0 , ford , userrating );        
      dataset.addValue( 3.0 , ford , millage );        
      dataset.addValue( 6.0 , ford , safety );               

      return dataset; 
   }
   
   public static void main( String[ ] args ) {
      BarChart_AWT chart = new BarChart_AWT("Car Usage Statistics", 
         "Which car do you like?");
      chart.pack( );        
      RefineryUtilities.centerFrameOnScreen( chart );        
      chart.setVisible( true ); 
   }
}

आइए हम उपरोक्त जावा कोड को अंदर रखते हैं BarChart_AWT.java फ़ाइल, और फिर संकलित करें और इसे कमांड से चलाएं जैसे कि -

$javac BarChar_AWT.java  
$java BarChart_AWT

यदि सब कुछ ठीक है, तो यह निम्नलिखित बार ग्राफ को उत्पन्न करने के लिए संकलित करेगा और चलाएगा -

JPEG छवि निर्माण

कमांड लाइन से JPEG इमेज जेनरेट करने के लिए उपरोक्त उदाहरण को फिर से लिखते हैं।

import java.io.*;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.data.category.DefaultCategoryDataset;
import org.jfree.chart.ChartUtilities;

public class BarChart {
   
   public static void main( String[ ] args )throws Exception {
      final String fiat = "FIAT";
      final String audi = "AUDI";
      final String ford = "FORD";
      final String speed = "Speed";
      final String millage = "Millage";
      final String userrating = "User Rating";
      final String safety = "safety";

      final DefaultCategoryDataset dataset = new DefaultCategoryDataset( );
      dataset.addValue( 1.0 , fiat , speed );
      dataset.addValue( 3.0 , fiat , userrating );
      dataset.addValue( 5.0 , fiat , millage );
      dataset.addValue( 5.0 , fiat , safety );

      dataset.addValue( 5.0 , audi , speed );
      dataset.addValue( 6.0 , audi , userrating );
      dataset.addValue( 10.0 , audi , millage );
      dataset.addValue( 4.0 , audi , safety );

      dataset.addValue( 4.0 , ford , speed );
      dataset.addValue( 2.0 , ford , userrating );
      dataset.addValue( 3.0 , ford , millage );
      dataset.addValue( 6.0 , ford , safety );

      JFreeChart barChart = ChartFactory.createBarChart(
         "CAR USAGE STATIStICS", 
         "Category", "Score", 
         dataset,PlotOrientation.VERTICAL, 
         true, true, false);
         
      int width = 640;    /* Width of the image */
      int height = 480;   /* Height of the image */ 
      File BarChart = new File( "BarChart.jpeg" ); 
      ChartUtilities.saveChartAsJPEG( BarChart , barChart , width , height );
   }
}

हमें BarChart.java फ़ाइल में उपरोक्त जावा कोड रखते हैं, और फिर इसे दिए गए कमांड से संकलित करें और चलाएं -

$javac BarChart.java  
$java BarChart

यदि सब कुछ ठीक है, तो यह JPEG छवि फ़ाइल नाम बनाने के लिए संकलित और चलाने के लिए होगा BarChart.jpeg अपनी वर्तमान निर्देशिका में।