在最近的项目中,需要使用出图,能够查看柱状图,饼状图等效果,刚开始我们用JS写的效果,发现效果不理想,找了一个JS插件发现效果还是不理想,客户也不满意,客户希望要很炫的效果,最后我们使用了FusionCharts。

FusionCharts是一个Flash的图表组件,它可以用来制作数据动画图表,其中动画效果用的是Adobe Flash 8 (原Macromedia Flash的)制作的flash , FusionCharts可用于任何网页的脚本语言类似于HTML , .NET,ASP , JSP技术的, PHP , ColdFusion等,提供互动性和强大的图表。使用XML作为其数据接口, FusionCharts充分利用流体美丽的Flash创建紧凑,互动性和视觉逮捕图表。当然他的有点我就不说了,百科上说的很多...

为了很炫,我们就使用的是FusionCharts里面的MSColumn3D.swf和Pie3D.swf的3D效果,具体不说了,直接贴代码了,这样看着清楚。

(1)创建柱状图的关键代码

   public void CreateChart(List<AJSLTJModel> list)
{
string strCategories;
string strCategories2; strchartXML = "<graph formatNumber='0' formatNumberScale='0' >";
strchartXML2 = "<graph formatNumber='0' formatNumberScale='0' >";
strCategories = "<categories>";
strCategories2 = "<categories>"; string strDataCurr1 = "<dataset seriesName='登记数量' color='AFD8F8'>";
string strDataPrev1 = "<dataset seriesName='登记面积' color='F6BD0F'>"; for (int i = 0; i < list.Count; i++)
{
AJSLTJModel ajstjModel = list[i];
string catagry = ajstjModel.ResYear + "年" + ajstjModel.ResMonth + "月";
string resTJSL = ajstjModel.ResDJSL.ToString();
string resTJMJ = ajstjModel.ResDJMJ.ToString();
strCategories += "<category name='" + catagry + "' />";
strCategories2 += "<category name='" + catagry + "' />";
strDataCurr1 += "<set value='" + resTJSL + "' />";
strDataPrev1 += "<set value='" + resTJMJ + "' />"; } strCategories += "</categories>";
strCategories2 += "</categories>"; strDataCurr1 += "</dataset>";
strDataPrev1 += "</dataset>"; strchartXML += strCategories + strDataCurr1 + "</graph>";
strchartXML2 += strCategories2 + strDataPrev1 + "</graph>";
ClientScript.RegisterStartupScript(this.GetType(), "showDiv", " <script> updateChart(\"" + strchartXML + "\",\"" + strchartXML2 + "\") </script> "); }

(2)创建饼状图的关键代码

  public void CreateChartPie(List<AJSLTJModel> list)
{
strchartXMLPie1 = "<chart palette='4' decimals='0' enableSmartLabels='1' enableRotation='0' bgColor='99CCFF,FFFFFF' bgAlpha='40,100' bgRatio='0,100' bgAngle='360' showBorder='1' startingAngle='70' >";
strchartXMLPie2 = "<chart palette='4' decimals='0' enableSmartLabels='1' enableRotation='0' bgColor='99CCFF,FFFFFF' bgAlpha='40,100' bgRatio='0,100' bgAngle='360' showBorder='1' startingAngle='70' >"; string strDataCurr1 = "";
string strDataCurr2 = ""; for (int i = 0; i < list.Count; i++)
{
AJSLTJModel ajstjModel = list[i];
string catagry = ajstjModel.ResYear + "年" + ajstjModel.ResMonth + "月";
string resTJSL = ajstjModel.ResDJSL.ToString();
string resTJMJ = ajstjModel.ResDJMJ.ToString();
strDataCurr1 += "<set label='"+catagry+"' value='"+resTJSL+"' />";
strDataCurr2 += "<set label='" + catagry + "' value='" + resTJMJ + "' />";
}
strchartXMLPie1 += strDataCurr1 + "</chart>";
strchartXMLPie2 += strDataCurr2 + "</chart>"; ClientScript.RegisterStartupScript(this.GetType(), "showDiv", " <script> updatePie(\"" + strchartXMLPie1 + "\",\"" + strchartXMLPie2 + "\") </script> "); }

(3)前台JS代码:

  function updateChart(strchartXML,strchartXML2) {
var chart1div = document.getElementById("chart1div");
if (chart1div != null) {
var chart1 = new FusionCharts("../FusionChart/MSColumn3D.swf", "chart1Id", screen.width - 400, screen.height - 500, "0", "0");
chart1.addParam("wmode", "Opaque");
chart1.setDataXML(strchartXML);
chart1.render("chart1div");
} var chart2div = document.getElementById("chart2div");
if (chart2div != null) {
var chart2 = new FusionCharts("../FusionChart/MSColumn3D.swf", "chart2Id", screen.width - 400, screen.height - 500, "0", "0");
chart2.addParam("wmode", "Opaque");
chart2.setDataXML(strchartXML2);
chart2.render("chart2div");
}
} function updatePie(strchartXMLPie1, strchartXMLPie2) {
var pie1div = document.getElementById("pie1div");
if (pie1div != null) {
var pie1 = new FusionCharts("../FusionChart/Pie3D.swf", "pie1Id", screen.width - 400, screen.height - 500, "0", "0");
pie1.addParam("wmode", "Opaque");
pie1.setDataXML(strchartXMLPie1);
pie1.render("pie1div");
} var pie2div = document.getElementById("pie2div");
if (pie2div != null) {
var pie2 = new FusionCharts("../FusionChart/Pie3D.swf", "pie2Id", screen.width - 400, screen.height - 500, "0", "0");
pie2.addParam("wmode", "Opaque");
pie2.setDataXML(strchartXMLPie2);
pie2.render("pie2div");
}
}

(4)还是看看效果图吧

OK,很炫吧,打开的时候如同雨后春笋,3D效果就是炫....使用完毕

使用FusionCharts出柱状图和饼状图的更多相关文章

  1. FusionCharts数据展示成饼状图、柱状图和折线图

    FusionCharts数据展示成饼状图.柱状图和折线图 本文以展示柱状图为例进行介绍,当然这仅仅是一种方法而已:还有很多方法可以用于展示图表,例如echarts,自定义图表标签.使用jfreecha ...

  2. FusionChart实现柱状图、饼状图的动态数据显示 附Demo

    最近做的项目中需要用饼状图显示——'问卷调查'的统计结果(之前用过FusionChart做过柱状图的数据展示,那还是两年前的事了),在网上查了下FusionChart实现饼状图显示方面的资料,却发现资 ...

  3. FusionChart实现柱状图、饼状图的动态数据显示

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. WPF、Silverlight项目中使用柱状图、饼状图、折线图

    在开发的过程中,可能会遇到柱状图.饼状图.折线图来更好的显示数据,最近整理了一下,遂放出来望需要的朋友可以参考.本文仅仅是简单显示,如需复杂显示效果请参考官网代码示例.----本文代码使用WPF,Si ...

  5. 前端数据统计用做Bootstrap的一些柱状图、饼状图和折线图案例

    Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. Bootstrap ...

  6. echarts 柱状图和饼状图动态获取后台数据

    运用echarts来实现图表 1.首先下载echarts包  http://echarts.baidu.com/echarts2/doc/example.html,在这里我下载的是 2.将echart ...

  7. iOS:使用贝塞尔曲线绘制图表(折线图、柱状图、饼状图)

    1.介绍: UIBezierPath :画贝塞尔曲线的path类 UIBezierPath定义 : 贝赛尔曲线的每一个顶点都有两个控制点,用于控制在该顶点两侧的曲线的弧度. 曲线的定义有四个点:起始点 ...

  8. DevExpress使用之ChartControl控件绘制图表(多坐标折线图、柱状图、饼状图)

    最近因为公司项目需要用到WinForm的DecExpress控件,在这里把一些使用方法总结一下. DevExpress中有一个专门用来绘制图表的插件ChartControl,可以绘制折线图.饼状图.柱 ...

  9. Java创建柱状图及饼状图

    Java创建图表其实还是很方便的,但是要引入相关的jar包.如下 jfreechart.jar jcommon,jar gnujaxp.jar 其中最主要的是jfreechart.jar. 下面就让我 ...

随机推荐

  1. C#连接ACCESS的一个问题

    C# 连接ACCESS数据库有时候报 "Microsoft.Jet.Oledb.4.0"没有注册,其实,并不是真的没注册,可能是下面的原因 在菜单 “项目”的最下面 工程属性 菜单 ...

  2. VoIP的话音质量测量方法

    严重的呼叫质量和性能管理问题会影响VoIP (Voice over IP)系统的运作.网络管理员等人需要理解基本的呼叫质量测量技术才能很好地监测.管理和诊断在VoIP中出现的这些问题.本文介绍了常用的 ...

  3. Linux 格式化分区 报错Could not stat --- No such file or directory 和 partprobe 命令

    分区的过程正常: [root@db1 /]# fdisk -l   Disk /dev/sda: 21.4 GB, 21474836480 bytes 255 heads, 63 sectors/tr ...

  4. debia下安装libjpeg

    今天在编译时遇到如下问题: configure: error: no usable libjpeg; please install libjpeg devel package or equivalen ...

  5. LeetCode OJ 96. Unique Binary Search Trees

    Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...

  6. mysql innobackupex备份工具

    先简单介绍一下这个工具:innobackupexinnobackupex比xtarbackup有更强的功能,它整合了xtrabackup和其他的一些功能,他不但可以全量备份/恢复,还可以基于时间的增量 ...

  7. diff

    http://www.ruanyifeng.com/blog/2012/08/how_to_read_diff.html 读懂diff   作者: 阮一峰 日期: 2012年8月29日 diff是Un ...

  8. THE ROAD TO PROGRAM

    <The C Programming Language> <The Practice of Programming><The Art of Computer Progra ...

  9. URL设置问题

    URL设置那里删除了<item path="index.aspx" pattern="index.aspx"/>后,访问首页就不出来了,要加上/in ...

  10. Android &Swift iOS开发:语言与框架对比

    转载自:http://www.infoq.com/cn/articles/from-android-to-swift-ios?utm_campaign=rightbar_v2&utm_sour ...