jfreechart使用小记(饼图)

项目中经常需要图表,在网上发现了jfreechart这个东西,很陈很冠希!

 

以画饼图为例说说吧

 

先要做好准备工作:

1. 下载jfreechart,我使用的版本是jfreechart-0.9.11

2. 将jfreechart-0.9.11.jar和jcommon-0.8.6.jar这俩个包复制到项目lib中去

3. 这里要注意的是,下载解压后有个servlet.jar,这个不要复制,否则会出错

 

要建立一个jfreechart图形有三个步骤

1. 建立一个有数据的dataSet

2. 用dataSet创建jfreechart

3. 对jfreechart作一些自定义设计

 

来看看例子:

首先建立一个工具类MakePie.java

import java.io.*;

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.DefaultPieDataset;

public class MakePie {
	
	public void makePie(DefaultPieDataset dataset) throws IOException {
		
		JFreeChart chart = ChartFactory.createPie3DChart("交纳费用图",  // 图表标题
		dataset, 
		true, // 是否显示图例
		false,
		false
		);
		
		PiePlot plot = (PiePlot)chart.getPlot();
		
		plot.setSectionLabelType(PiePlot.VALUE_AND_PERCENT_LABELS);
		
		plot.setStartAngle(120);
							
		FileOutputStream fos_jpg = null;
		try {
			fos_jpg = new FileOutputStream("D:\\fruit.jpg");
			ChartUtilities.writeChartAsJPEG(fos_jpg,200,chart,400,300,null);
		} finally {
			try {
				fos_jpg.close();
			} catch (Exception e) {}
		}
	}
}

 

在action里面建立dataSet并调用makePie方法生成图像

	double payOtherTotal=0.00;
	double payItemTotal=0.00;
	double payRenoveTotal=0.00;
	double payWaterTotal=0.00;

 

	MakePie mk = new MakePie();
	DefaultPieDataset dataset = new DefaultPieDataset();
	dataset.setValue("一般费用", payTotal);
	dataset.setValue("杂费", payOtherTotal);
	dataset.setValue("电梯运材费", payItemTotal);
	dataset.setValue("装修管理费", payRenoveTotal);
	dataset.setValue("水费费", payWaterTotal);
	try {
		mk.makePie(dataset);
	} catch (IOException e1) {
		e1.printStackTrace();
	}

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值