JFreeChart - 3 Boyutlu Pasta / Çubuk Grafik
3B grafikler, üç boyutlu formatta görünen grafiklerdir. Daha iyi görüntüleme ve net bilgi sağlamak için bu grafikleri kullanabilirsiniz. Bir 3D Pasta grafiği, pasta grafiğiyle aynıdır ve ayrıca güzel bir 3D efekti içerir. Bir pasta grafiğinde 3B efekt oluşturmaya özen gösterecek fazladan bir kod ekleyerek 3B efekti elde edilebilir.
3D Pasta grafiği
Mobil satışı 3 boyutlu bir pasta grafik yardımıyla göstermek için aşağıdaki örneği düşünün. Aşağıda, farklı mobil markaların ve satışlarının bir listesi bulunmaktadır (günlük birim).
S.No | Mobil Markalar | Satışlar (günlük UNITS) |
---|---|---|
1 | İphone 5s | 20 |
2 | Samsung Büyük | 20 |
3 | MOTO G | 40 |
4 | Nokia Lumia | 10 |
Aşağıda, yukarıda verilen bilgilerden 3D Pasta Grafiği oluşturma kodu verilmiştir. Bu kod, herhangi bir AWT tabanlı uygulamaya bir pasta grafiği yerleştirmenize yardımcı olur.
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 );
}
}
Yukarıdaki Java kodunu PieChart3D.java dosyasında tutalım ve sonra aşağıdaki gibi komut isteminden derleyip çalıştıralım -
$javac PieChart3D.java
$java PieChart3D
Her şey yolundaysa, adında bir JPEG görüntü dosyası oluşturmak için derlenecek ve çalıştırılacaktır. PieChart3D.jpeg aşağıdaki 3D Pasta Grafiğine sahip olmak -
3D Çubuk Grafik
3B Çubuk grafik, ek olarak güzel bir 3B efektli çubuk grafikle aynıdır. Bir 3B efekti, bir çubuk grafikte 3B efekti oluşturmaya özen gösteren biraz fazladan kod ekleyerek elde edilebilir. Çeşitli araba istatistiklerini 3 boyutlu çubuk grafik yardımıyla gösteren aşağıdaki örneği düşünün. Aşağıda, bir çubuk grafik kullanarak göstereceğimiz, farklı özellikleriyle birlikte otomobil markalarının bir listesi yer almaktadır -
Araba | Hız | Kullanıcı oyu | Millage | Emniyet |
---|---|---|---|---|
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 |
Aşağıdaki kod, yukarıda verilen bilgilerden 3B Çubuk Grafik oluşturur. Bu kod, herhangi bir AWT tabanlı uygulamaya bir çubuk grafik yerleştirmenize yardımcı olur.
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);
}
}
Yukarıdaki Java kodunu şurada tutalım: BarChart3D.java dosyasını açın ve ardından aşağıdaki gibi komut isteminde derleyin ve çalıştırın -
$javac BarChart3D.java
$java BarChart3
Ortamınızda her şey yolundaysa, bir JPEG görüntü dosyası oluşturmak için derlenir ve çalıştırılır. BarChart3D.jpeg aşağıdaki 3B Çubuk Grafiğe sahip olmak -