import java.io.*;
import org.jfree.data.*;
import org.jfree.data.general.*;
import org.jfree.chart.*;
import org.jfree.chart.ChartFactory;
/**
 * 用于演示饼图的生成
 * @author Winter Lau
 */
public class PieChartDemo {
public static void main(String[] args) throws IOException{
DefaultPieDataset data = getDataSet();
JFreeChart chart = ChartFactory.createPieChart3D("水果产量图",  // 图表标题
data, 
true, // 是否显示图例
false,
false
);
//写图表对象到文件,参照柱状图生成源码
}
/**
 * 获取一个演示用的简单数据集对象
 * @return
 */
private static DefaultPieDataset getDataSet() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}

解决方案 »

  1.   

    你的代码不是不能运行,只是省略了把饼图写入文件的代码,修改如下:import java.io.FileOutputStream;
    import java.io.IOException;import org.jfree.chart.ChartFactory;
    import org.jfree.chart.ChartUtilities;
    import org.jfree.chart.JFreeChart;
    import org.jfree.data.general.DefaultPieDataset;/**
     * 用于演示饼图的生成
     * 
     * @author Winter Lau
     */
    public class PieChartDemo {  public static void main(String[] args) throws IOException {
        DefaultPieDataset data = getDataSet();
        JFreeChart chart = ChartFactory.createPieChart3D("水果产量图", // 图表标题
            data, true, // 是否显示图例
            false, false);
        // 写图表对象到文件,参照柱状图生成源码
        try {
          FileOutputStream fos_jpg = new FileOutputStream("D:\\AA.jpg");
          ChartUtilities.writeChartAsJPEG(fos_jpg, 1.0f, chart, 640, 480, null);
          fos_jpg.close();
        } catch (Exception e) {
          e.printStackTrace();
        }
      }  /**
       * 获取一个演示用的简单数据集对象
       * 
       * @return
       */
      private static DefaultPieDataset getDataSet() {
        DefaultPieDataset dataset = new DefaultPieDataset();
        dataset.setValue("苹果", 100);
        dataset.setValue("梨子", 200);
        dataset.setValue("葡萄", 300);
        dataset.setValue("香蕉", 400);
        dataset.setValue("荔枝", 500);
        return dataset;
      }
    }运行以后便能够在D盘根目录找到图片。
      

  2.   

    谢谢兄弟了,小弟刚学JAVA没几天,以后还要多求教呢,接分!