JFreeChart - Graphique à secteurs / barres 3D

Les graphiques 3D sont ceux qui apparaissent dans un format tridimensionnel. Vous pouvez utiliser ces graphiques pour fournir un meilleur affichage et des informations claires. Un graphique à secteurs 3D est identique au graphique à secteurs avec un bel effet 3D. Un effet 3D peut être obtenu en ajoutant un peu de code supplémentaire, qui se chargera de créer un effet 3D dans un camembert.

Graphique à secteurs 3D

Prenons l'exemple suivant pour illustrer la vente mobile à l'aide d'un graphique à secteurs 3D. Voici une liste des différentes marques mobiles et leurs ventes (unités par jour).

S. Non Marques mobiles Ventes (UNITÉS par jour)
1 Iphone 5s 20
2 Samsung Grand 20
3 MOTO G 40
4 Nokia Lumia dix

Voici le code pour créer un graphique à secteurs 3D à partir des informations ci-dessus. Ce code vous aide à intégrer un graphique à secteurs dans n'importe quelle application basée sur AWT.

import java.io.*; 

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

public class PieChart3D {

   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.createPieChart3D( 
         "Mobile Sales" ,  // chart title                   
         dataset ,         // data 
         true ,            // include legend                   
         true, 
         false);

      final PiePlot3D plot = ( PiePlot3D ) chart.getPlot( );             
      plot.setStartAngle( 270 );             
      plot.setForegroundAlpha( 0.60f );             
      plot.setInteriorGap( 0.02 );             
      int width = 640;   /* Width of the image */             
      int height = 480;  /* Height of the image */                             
      File pieChart3D = new File( "pie_Chart3D.jpeg" );                           
      ChartUtilities.saveChartAsJPEG( pieChart3D , chart , width , height );   
   }
}

Gardons le code Java ci-dessus dans le fichier PieChart3D.java, puis compilons-le et exécutons-le à partir de la commande invitée comme -

$javac PieChart3D.java  
$java PieChart3D

Si tout va bien, il se compilera et s'exécutera pour créer un fichier image JPEG nommé PieChart3D.jpeg ayant le graphique à secteurs 3D suivant -

Graphique à barres 3D

Un graphique à barres 3D est le même que le graphique à barres en plus d'un bel effet 3D. Un effet 3D peut être obtenu en ajoutant un peu de code supplémentaire, qui se chargera de créer un effet 3D dans un graphique à barres. Prenons l'exemple suivant qui illustre diverses statistiques de voiture à l'aide d'un graphique à barres 3D. Voici une liste des marques de voitures avec leurs différentes caractéristiques, que nous montrerons à l'aide d'un graphique à barres -

Voiture La vitesse Note de l'utilisateur Millage sécurité
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

Le code suivant crée un graphique à barres 3D à partir des informations ci-dessus. Ce code vous aide à intégrer un graphique à barres dans n'importe quelle application basée sur AWT.

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 BarChart3D {
   
   public static void main( String[ ] args )throws Exception {
      final String fait = "FAIT";              
      final String audi = "AUDI";              
      final String ford = "FORD";              
      final String speed = "Speed";              
      final String popular = "Popular";              
      final String mailage = "Mailage";              
      final String userrating = "User Rating";              
      final String safety = "safety";        
      final DefaultCategoryDataset dataset = new DefaultCategoryDataset( ); 

      dataset.addValue( 1.0 , fait , speed );              
      dataset.addValue( 4.0 , fait , popular );              
      dataset.addValue( 3.0 , fait , userrating );              
      dataset.addValue( 5.0 , fait , mailage );              
      dataset.addValue( 5.0 , fait , safety );              
      
      dataset.addValue( 5.0 , audi , speed );              
      dataset.addValue( 7.0 , audi , popular );              
      dataset.addValue( 6.0 , audi , userrating );              
      dataset.addValue( 10.0 , audi , mailage );              
      dataset.addValue( 4.0 , audi , safety ); 
      
      dataset.addValue( 4.0 , ford , speed );              
      dataset.addValue( 3.0 , ford , popular );              
      dataset.addValue( 2.0 , ford , userrating );              
      dataset.addValue( 3.0 , ford , mailage );              
      dataset.addValue( 6.0 , ford , safety );                 
      
      JFreeChart barChart = ChartFactory.createBarChart3D(
         "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 barChart3D = new File( "barChart3D.jpeg" );                            
      ChartUtilities.saveChartAsJPEG( barChart3D, barChart, width, height);
   }
}

Gardons le code Java ci-dessus dans BarChart3D.java fichier, puis compilez et exécutez-le à partir de la commande invitée comme -

$javac BarChart3D.java  
$java BarChart3

Si tout va bien avec votre environnement, il sera compilé et exécuté pour créer un fichier image JPEG BarChart3D.jpeg ayant le diagramme à barres 3D suivant -