Учебники

JFreeChart — 3D Pie / Bar Chart

Это трехмерные диаграммы, которые отображаются в трехмерном формате. Вы можете использовать эти графики, чтобы обеспечить лучшее отображение и четкую информацию. Круговая диаграмма 3D такая же, как круговая диаграмма, с приятным трехмерным эффектом. Эффект 3D можно получить, добавив немного дополнительного кода, который позаботится о создании 3D-эффекта в круговой диаграмме.

3D круговая диаграмма

Рассмотрим следующий пример, чтобы проиллюстрировать мобильные продажи с помощью трехмерной круговой диаграммы. Ниже приведен список различных мобильных брендов и их продажи (единиц в день).

S.No Мобильные бренды Продажи (ЕД. В день)
1 Айфон 5с 20
2 Samsung Grand 20
3 MOTO G 40
4 Нокиа Люмия 10

Ниже приведен код для создания 3D круговой диаграммы из приведенной выше информации. Этот код помогает вам встроить круговую диаграмму в любое приложение на основе 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 );   
   }
}

Давайте сохраним приведенный выше Java-код в файле PieChart3D.java, а затем скомпилируем и запустим его из команды, отображаемой как —

$javac PieChart3D.java  
$java PieChart3D 

Если все в порядке, он скомпилируется и запустится для создания файла изображения JPEG с именем PieChart3D.jpeg, имеющего следующую трехмерную круговую диаграмму —

JFreeChart PieChart3D

3D Гистограмма

Гистограмма 3D такая же, как гистограмма, с приятным 3D-эффектом. Эффект 3D можно получить, добавив немного дополнительного кода, который позаботится о создании 3D-эффекта в гистограмме. Рассмотрим следующий пример, который отображает различную статистику автомобилей с помощью трехмерной гистограммы. Ниже приведен список марок автомобилей с их различными характеристиками, которые мы покажем с помощью гистограммы.

Автомобиль скорость Рейтинг пользователей Миледж безопасности
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.

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);
   }
}

Давайте сохраним приведенный выше Java-код в файле BarChart3D.java , а затем скомпилируем и запустим его из команды, отображаемой как —

$javac BarChart3D.java  
$java BarChart3

Если с вашей средой все в порядке, она скомпилируется и запустится для создания файла изображения JPEG BarChart3D.jpeg, имеющего следующую трехмерную гистограмму —