FusionCharts图表开发

          FusionCharts是InfoSoft Global公司的一个产品,而FusionCharts Free则是FusionCharts提供的一个免费版本,虽然免费,功能依然强大,图形类型依然丰富。是一个跨平台,跨浏览器的flash图表组件解决方案,能够被 ASP、.NET, PHP, JSP, ColdFusion, Ruby on Rails, 简单 HTML 页面甚至PPT调用。我们不需要知道任何Flash的知识,只需要了解你所用的编程语言而已。


开发步骤:

1、拷贝FusionCharts文件到WebRoot目录下

2、在显示信息的页面引入所需的js文件

<script type="text/javascript" src="FusionCharts/Charts/FusionCharts.js"></script>
<script type="text/javascript" src="FusionCharts/Charts/FusionChartsExportComponent.js"></script>
3、将需要显示的对象转成JSON数据(在ListServlet中加入)
List<Person> listPage = pdi.listPage(currentPage, pageSize);
		request.setAttribute("list", listPage);
		JSONArray ja = new JSONArray();
		for (int i = 0; i < listPage.size(); i++) {
			JSONObject jo = new JSONObject();
			jo.put("name", listPage.get(i).getName());// 把姓名放入对象
			jo.put("salary", listPage.get(i).getSalary());// 把工资放入对象
			ja.add(jo);// 添加进JSONArray
		}
		request.setAttribute("json", ja);// 把集合存储

4、在jsp显示图表的页面写入js代码

	<script type="text/javascript">
  //创建报表工具          写入你需要注入的模板     chartId:id唯一性    高度   宽度
  var chart = new FusionCharts("FusionCharts/Charts/Column2D.swf","chartId111", "660", "420");
	//数据加载来源,也可以直接是data.xml
	//chart.setDataURL("data.xml");
	//渲染   或者注入(展示的地方)
	//chart.render("show");
	//从model里面取json串
	var ss = '${json}';
	//alert(ss);
	//解析json串   eval把json解析成数组
	var list = eval(ss);
	//存放的object类型   object就是json数据
	//alert(list);
	//因为FusionCharts需要的是xml的字符串,所以拼接
	//yAxisMinValue 指定纵轴(Y轴)最小值,数字
	//yAxisMaxValue 指定纵轴(Y轴)最大值,数字
	//xaxisname 指横坐标轴(y轴)名称
	//yaxisname 指纵坐标轴(y轴)名称
	//FusionCharts   外部标签只认chart 和graph标签   
	//caption  标题
	//chart 和graph   
	var charts="<chart caption='人事工资图' showBorder='1' yAxisMinValue='10' borderColor='#cfaec1' yAxisMaxValue='150' xaxisname='姓名' yaxisname='工资(元)'>";
	for(var i = 0; i< list.length; i++){
		charts+="<set name='"+list[i].name+"' value='"+list[i].salary+"'/> ";
	}
	charts+="</chart>";
	//加载字符串    本来需要的是xml文件,现在必须拼装成xml文件
  chart.setDataXML(charts);
  chart.render("show");
	
  </script>


更改显示图标页面的js代码,可以获得不同的图形效果

var chart = new FusionCharts("FusionCharts/Charts/Column2D.swf","chartId111", "660", "420");

改为

var chart = new FusionCharts("FusionCharts/Charts/Column3D.swf","chartId111", "660", "420");
显示结果为:

Pie2D.swf和Pie3D.swf(2d和3d的饼状图)

还有更多,这里就不一一举例了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值