日期:2014-05-17 浏览次数:20712 次
package com.walkman.jfreechart; import java.awt.Color; import java.io.FileOutputStream; import java.text.DecimalFormat; import java.text.NumberFormat; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.labels.StandardPieSectionLabelGenerator; import org.jfree.chart.plot.PiePlot3D; import org.jfree.data.general.DefaultPieDataset; public class PieChartPicture { public static void main(String[] args) { // 准备数据 DefaultPieDataset dataset = new DefaultPieDataset(); dataset.setValue("关键", 2); dataset.setValue("严重", 10); dataset.setValue("平均", 50); dataset.setValue("较轻", 20); // 使用ChartFactory创建图表对象 JFreeChart chart = ChartFactory.createPieChart3D("某项目某月份缺陷严重程度分析图2", dataset, true, true, false); // 设置图表样式 PiePlot3D plot = (PiePlot3D) chart.getPlot(); // 图片中显示百分比:自定义方式,{0} 表示选项, {1} 表示数值, {2} 表示所占比例 ,小数点后两位 plot.setLabelGenerator(new StandardPieSectionLabelGenerator( "{0}={1}({2})", NumberFormat.getNumberInstance(), new DecimalFormat("0.00%"))); plot.setLegendLabelGenerator(new StandardPieSectionLabelGenerator( "{0}={1}({2})")); // 设置背景色为白色 chart.setBackgroundPaint(Color.white); // 指定图片的透明度(0.0-1.0) plot.setForegroundAlpha(1.0f); // 指定显示的饼图上圆形(false)还椭圆形(true) plot.setCircular(false); // 将生成的图表文件输出到磁盘。 FileOutputStream fos_jpg = null; try { fos_jpg = new FileOutputStream("D:\\某项目某月份缺陷严重程度分析图.jpg"); ChartUtilities.writeChartAsJPEG(fos_jpg, 1.0f, chart, 400, 250, null); fos_jpg.close(); } catch (Exception e) { e.printStackTrace(); } } }
import java.awt.Color; import java.awt.Font; import java.io.FileOutputStream; import java.text.DecimalFormat; import java.text.NumberFormat; import org.jfree.chart.ChartFactory; import org.jfree.chart.ChartUtilities; import org.jfree.chart.JFreeChart; import org.jfree.chart.StandardChartTheme; import org.jfree.chart.labels.StandardPieSectionLabelGenerator; import org.jfree.chart.plot.PiePlot3D; import org.jfree.data.general.DefaultPieDataset; public class PieChartPicture { public static void main(String[] args) { Font font = new Font("宋体",Font.PLAIN,12) ; // 准备数据 DefaultPieDataset dataset = new DefaultPieDataset(); dataset.setValue("关键", 2); dataset.setValue("严重", 10); dataset.setValue("平均", 50); dataset.setValue("较轻", 20); // 使用ChartFactory创建图表对象 //先给个主题,将字体设置好 StandardChartTheme s = new StandardChartTheme("a"); s.setRegularFont(font); ChartFactory.setChartTheme(s); JFreeChart chart = ChartFactory.createPieChart3D("某项目某月份缺陷严重程度分析图2",dataset, false, false, false); //设置标题的字体 chart.getTitle().setFont(font); // 设置图表样式 PiePlot3D plot = (PiePlot3D) chart.getPlot(); // 图片中显示百分比:自定义方式,{0} 表示选项, {1} 表示数值, {2} 表示所占比例 ,小数点后两位 plot.setLabelGenerator(new StandardPieSectionLabelGenerator( "{0}={1}({2})", NumberFormat.getNumberInstance(), new DecimalFormat("0.00%"))); plot.setLegendLabelGenerator(new StandardPieSectionLabelGenerator( "{0}={1}({2})")); // 设置背景色为白色 chart