您的位置:首页 > 其它

JFusionChartFree

2016-03-31 21:48 357 查看
使用方法

第一步:把要用的swf文件放到WebRoot下的某个地方,创建一个fusionCharts的文件夹。

第二步:在后台的java文件中准备数据,例如:

public String chartUserFCF(){
//查询数据库,获取图形需要数据集合
List<Object[]> list = elecUserService.chartUser("性别","sexID");
//组织XML的数据
StringBuilder builder = new StringBuilder();
for (int i = 0; i < list.size(); i++) {
/**b.keyword,b.ddlName,COUNT(b.ddlCode)*/
Object[] objects = (Object[])list.get(i);
if(i==0){//组织第一个值
String x = "男女比例统计";
String y = "unit";//存在FusionChart中的一个问题,Y轴的显示不支持中文,所以我们用英文代替
builder.append("<graph caption='用户统计报表("+objects[0].toString()+")' xAxisName='"+x+"' bgColor='FFFFDD' yAxisName='"+y+"' showValues='1'  decimals='0' baseFontSize='18'  maxColWidth='60' showNames='1' decimalPrecision='0'> ");
builder.append("<set name='"+objects[1].toString()+"' value='"+objects[2].toString()+"' color='AFD8F8'/>");
}

if(i==list.size()-1){//组织最后一个值
builder.append("<set name='"+objects[1].toString()+"' value='"+objects[2].toString()+"' color='FF8E46'/>");
builder.append("</graph>");
}
}
request.setAttribute("chart", builder);//request中存放XML格式的数据
return "chartUserFCF";
}
}
<result name="chartUserFCF">/WEB-INF/page/system/userReportFCF.jsp</result>
</pre><pre name="code" class="html"><input style="font-size:12px; color:black; height=20;width=80" id="BT_Add" type="button" value="人员统计(按性别统计)" name="BT_Add" 
<span style="white-space:pre">						</span> onclick="openWindow('${pageContext.request.contextPath }/system/elecUserAction_chartUserFCF.do','900','700')">
<pre name="code" class="html"><!-- 1:加载JS -->
<script language="JavaScript" src="${pageContext.request.contextPath }/script/FusionCharts.js"></script>

</head>

<body>

<fieldset style="width: 600px; height: 600px; padding: 1 background:${pageContext.request.contextPath }/images/back1.JPG"><legend>
<font color="#0000FF">
<img border="0" src="${pageContext.request.contextPath }/images/zoom.gif" width="14" height="14"> 报表统计</font></legend>
<!-- FCF报表加载数据 -->
<!-- 2:添加div标签 -->
<div id="chartdiv" align="center">图形将出现这个DIV里,到时这里的字将被图形替代。</div>
<!-- 3:使用隐藏域获取XML数据 -->
<s:hidden id="data" name="data" value="%{#request.chart}"></s:hidden>
<!-- 4:使用js完成加载数据 -->
<script type="text/javascript">
var myChart = new FusionCharts("${pageContext.request.contextPath }/fusionCharts/FCF_Pie2D.swf", "myChartId", "600", "500");
var di = document.getElementById("data").value;
myChart.setDataXML(di);
myChart.render("chartdiv");
</script>

</fieldset>
</body>
</html>



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: