代码如下
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.data.general.DefaultPieDataset;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
/**
* 饼状图(飞掉的饼)
*/
public class PieChart {
FileOutputStream fos = null;
public static void main(String[] args) throws IOException {
DefaultPieDataset dataset = new DefaultPieDataset();
//key,value
//如果设置为null或者0只看到显示看不得值
dataset.setValue("hadoop", 100);
dataset.setValue("spark", 300);
dataset.setValue("fink", 200);
dataset.setValue("storm", 150);
//绘制饼状图
//绘制3d createPieChart3D
JFreeChart chart = ChartFactory.createPieChart(
"big Data",
dataset, true, false, false);
FileOutputStream fos = null;
//炸开的饼
PiePlot plot = (PiePlot) chart.getPlot();
plot.setExplodePercent("hadoop", 0.3);
//忽略值为0或为null的数据
plot.setIgnoreZeroValues(true);
plot.setIgnoreNullValues(true);
try {
fos = new FileOutputStream("target/pie.png");
ChartUtilities.writeChartAsPNG(fos, chart, 400, 300);
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
System.out.println("图表绘制结束");
fos.close();
}
}
}