6.JFreeChart 3D饼图/条形图-3D饼图
作者:互联网
本文链接:https://blog.csdn.net/cnds123321/article/details/89600571
目录链接:https://blog.csdn.net/cnds123321/article/details/89600379
三维/3D图表是那些显示在一个三维格式。可以使用这些图表来提供更好的显示效果和清晰的信息。三维/3D饼图是饼图另外一个不错的3D效果。 3D效果可以通过添加一些额外的代码来实现,它会创建一个饼图3D效果。
6.1 3D饼图
6.1.1 测试数据
学科 | 分数 |
---|---|
语文 | 98 |
数学 | 99 |
英语 | 80 |
6.1.2 基于swing的应用
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;
import javax.swing.*;
import java.io.*;
public class Chart {
public static void main(String[] args) throws IOException {
//创建饼图数据集
DefaultPieDataset dataset;
//设置数据集,饼图的数据对象只能添加两个参数
dataset=new DefaultPieDataset();
dataset.setValue("语文",38);
dataset.setValue("数学",99);
dataset.setValue("英语",60);
//实现简单的饼图,并设置基本数据
JFreeChart freeChart=ChartFactory.createPieChart3D(
"3D饼图",// 图表标题
dataset,//数据集,即要显示在图表上的数据
true,//是否显示图例
true,//是否显示提示
false//是否生成URL连接
);
//以面板显示
ChartPanel chartPanel=new ChartPanel(freeChart);
chartPanel.setPreferredSize(new java.awt.Dimension(560,400));
//创建一个主窗口来显示面板
JFrame frame=new JFrame("饼图");
frame.setLocation(500,400);
frame.setSize(600,500);
//将主窗口的内容面板设置为图表面板
frame.setContentPane(chartPanel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
结果展示:
6.1.3 创建图像
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;
import java.io.*;
public class Chart {
public static void main(String[] args) throws IOException {
//创建饼图数据集
DefaultPieDataset dataset=new DefaultPieDataset();
//设置数据集,饼图的数据对象只能添加两个参数
dataset=new DefaultPieDataset();
dataset.setValue("语文",38);
dataset.setValue("数学",99);
dataset.setValue("英语",60);
//实现简单的饼图,并设置基本数据
JFreeChart freeChart=ChartFactory.createPieChart3D(
"3D饼图",// 图表标题
dataset,//数据集,即要显示在图表上的数据
true,//是否显示图例
true,//是否显示提示
false//是否生成URL连接
);
//使用输出流输出图表文件
//输出JPG文件
OutputStream os=new FileOutputStream("c:/picture.jpg");
ChartUtilities.writeChartAsJPEG(os,freeChart,500,500);
//输出PNG文件
OutputStream os_png=new FileOutputStream("c:/pictrue_png.png");
ChartUtilities.writeChartAsPNG(os_png,freeChart,500,500);
}
}
结果展示:
标签:jfree,org,dataset,JFreeChart,new,import,条形图,3D 来源: https://blog.csdn.net/cnds123321/article/details/89600571