FusionChart3.1的基本应用
FusionChart在3.07版本已经支持导出功能了,最近做项目正好需要。用3.1版本实现
介绍一种导出图片比较简单的方法:
<chart palette="4" exportEnabled='1' exportHandler='/FC/FCExporter.jsp' decimals="0" enableSmartLabels="1" enableRotation="0" bgColor="99CCFF,FFFFFF" bgAlpha="40,100" bgRatio="0,100" bgAngle="360" showBorder="1" startingAngle="70">
只需要在chart里面加入:
exportEnabled='1' exportHandler='/FC/FCExporter.jsp'
--/FC/FCExporter.jsp是这个jsp文件所在的的位置。
其他方法:首先,在需要插入图表的页面包含进
XML/HTML代码
<script language="JavaScript" src="/charts31/JSClass/FusionCharts.js"></script>
<script language="JavaScript" src="/charts31/JSClass/FusionChartsExportComponent.js"></script>
然后,在需要插入图表的位置
XML/HTML代码
<div id="chartdiv1" align="center"></div>
<script type="text/javascript">
var myChart = new FusionCharts("/charts31/Column2D.swf", "myChartId1","90%","90%",0,1);
//参数含意 需要图表的swf文件,图表ID,宽度,高度,debug模式,是否允许JS与图表通信
myChart.setDataURL("data.xml");
//承载数据的xml文件,也可以是程序文件生成xml
myChart.setTransparent(false);
//设置flash与其他层的层次,false是flash在最下
myChart.render("chartdiv1");
</script>
</td>
在数据文件data.xml中,需要加入如下定义
XML/HTML代码
<chart ...exportEnabled='1' exportAtClient='1' exportHandler='fcExporter_all' exportDialogMessage='正在导出,请稍候...' exportFileName='图表' exportFormats='PDF=导出PDF文件|PNG=导出PNG文件|JPG=导出JPG文件' ...>
下边是重头戏了,在页面文件中设定下载方式,项目中用到的有两种方式,一种是单独下载
XML/HTML代码
<div id="fcexpDiv" ></div>
<script type="text/javascript">
var myExportComponent = new FusionChartsExportObject("fcExporter_all", "/charts31/FCExporter.swf");
//这里的第一个参数必须和数据文件中exportHandler的值相同
myExportComponent.componentAttributes.btnFontSize = '12';
myExportComponent.componentAttributes.btndisabledtitle = '等待导出';
myExportComponent.componentAttributes.btnsavetitle = '下载';
myExportComponent.Render("fcexpDiv");
</script>
另一种方式是出现下载列表,并且可合并下载
XML/HTML代码
<div id="fcexpDiv" ></div>
<script type="text/javascript">
var myExportComponent = new FusionChartsExportObject("fcExporter_all", "/swf/charts31/FCExporter.swf");
myExportComponent.componentAttributes.fullMode = '1';
myExportComponent.componentAttributes.saveMode = 'both';
myExportComponent.componentAttributes.showAllowedTypes = '1';
myExportComponent.componentAttributes.width = '400';
myExportComponent.componentAttributes.height = '150';
myExportComponent.componentAttributes.showMessage = '1';
myExportComponent.componentAttributes.message = '成功导出文件列表';
myExportComponent.componentAttributes.defaultExportFilename = '综合分析';
myExportComponent.componentAttributes.saveAllTitle = '合并类型';
myExportComponent.componentAttributes.btnSaveAllTitle = '合并下载';
myExportComponent.componentAttributes.btnFontSize = '12';
myExportComponent.componentAttributes.btnsavetitle = '下载';
myExportComponent.Render("fcexpDiv");
</script>
至此,基本上图表导出功能就实现了。
在实际开发的时候还出现另一种情况,就是某些页面不支持解析js,这种情况当然非常少见,我也只是在用extjs的tabs的时候遇到过,这种时候,我们怎么才能用图表呢,答案是直接写出上文js生成出来的html代码,并且由于需要多浏览器支持,可以直接用
XML/HTML代码
<embed type="application/x-shockwave-flash" src="/charts31/StackedArea2D.swf" width="90%25" height="90%25" id="myChartId1" name="myChartId1" quality="high" allowScriptAccess="always" WMode="Opaque" flashvars="debugMode=0&chartWidth=90%25&chartHeight=90%25&DOMId=myChartId1®isterWithJS=1&scaleMode=noScale&lang=EN&dataURL=data.xml"/>
一行代码即可实现
有人可能要说FC还支持PHP的写法还支持APS的写法等等,我明确告诉你,在他用PHP的写法做函数调用后,其实也是调到了上边的JS,与JS的写法基本是一样的,在完全不支持JS的页面中也不能使用。
分享到:
相关推荐
fusionchart 3.1破解版 swf文件
在IT行业中,FusionCharts是一款广泛应用的JavaScript图表库,它能够帮助开发者轻松创建交互式的、丰富的数据可视化图表。本示例主要关注的是FusionCharts 3.1版本的一个关键功能——图片导出,以及如何通过...
山东大学单片机原理与应用实验工程文件 3.1 基本并行I/O口实验 详解博客地址:https://blog.csdn.net/m0_52316372/article/details/125629984 第2部分 Proteus 系统仿真实验 3.1 基本并行I/O口实验
Struts2.0+spring2.0+hibernate3.1 ACEGI应用示例
linux应用程序开发环境v3.1.pdf linux应用程序开发环境v3.1.pdf
Windows 3.1添加了对声音输入输出的基本多媒体的支持和一个CD音频播放器,以及对桌面出版很有用的TrueType字体。 中文版的Windows 3.1是将英文版汉化的结果,很多地方不符合中国的国情,微软及时采取措施,发布了...
windows 3.1 16bit 这样的老系统回味一下? 建议在虚拟机下面装。
.NET Core 3.1 是微软推出的跨平台、开源的应用程序开发框架,它是.NET Core系列中的一个重要版本,提供了广泛的性能优化和新功能。此压缩包".netCore3.1.zip"包含了.NET Core 3.1 SDK(软件开发工具包)和.NET Core...
《ApkIDE3.1:探索与理解Android应用的反编译之道》 ApkIDE3.1,作为一款强大的Apk安装包分析与反编译工具,是开发者、安全研究员以及对Android应用内部结构充满好奇的用户们的得力助手。它提供了直观的界面和丰富...
这个"asp.netcore-runtime-3.1.rar"压缩包包含的是ASP.NET Core 3.1运行时的组件,它允许你在Linux系统上运行ASP.NET Core 3.1的应用程序。在本例中,我们将关注如何在CentOS操作系统上部署和安装这些组件。 首先,...
TwinCAT3.1广泛应用于制造业的各个领域,如: 1. **机械设备**:如注塑机、包装机械、印刷设备等的自动化控制。 2. **生产线自动化**:如汽车装配线、食品饮料生产线的流程控制。 3. **运动控制**:在机器人、...
【Borland C/C++ 3.1 完整版(BC3.1)】是一款经典的集成开发环境(IDE),由Borland公司发布,专为编写16位应用程序而设计。这款编译器在20世纪90年代初期非常流行,尤其在DOS和Windows 3.x时代,是许多开发者首选的C...
本文将深入探讨其功能、应用以及如何操作。 HYRes3.1是一款针对摄影师、光学工程师以及图像处理专家设计的软件,它能够精确地分析图像传感器或镜头的性能。ISO12233是国际标准化组织制定的一套用于评估图像系统...
2016年高考化学备考中等生百日捷进提升 3.1 基本概念类选择题解题方法和策略 (教师版) 含解析.doc
2016年高考化学备考中等生百日捷进提升 3.1 基本概念类选择题解题方法和策略 (原卷版) (1).doc
2016年高考化学备考中等生百日捷进提升 3.1 基本概念类选择题解题方法和策略 (教师版) 含解析(1).doc
JetbrainsCrack-3.1-release-enc.jarJetbrainsCrack-3.1-release-enc.jarJetbrainsCrack-3.1-release-enc.jarJetbrainsCrack-3.1-release-enc.jarJetbrainsCrack-3.1-release-enc.jarJetbrainsCrack-3.1-release-enc...
.NET Core 3.1 是一个跨平台的,开源的框架,能够帮助开发者快速构建现代化的应用程序。下面是从 NET Core 3.1 中文手册中总结的一些重要知识点: 入门 * Hello World 入门教程:这是一个基础的 tutorial,指导...
USB 3.1 规范是通用串行总线(Universal Serial Bus)技术的一个重要里程碑,为高速数据传输和设备连接提供了显著的提升。...通过阅读"USB3.1 Spec.pdf"这份文档,你可以深入理解USB 3.1的技术细节和应用。
6. **低功耗状态**:UFS 3.1支持多种低功耗模式,如深度睡眠和待机模式,以适应不同的应用场景,延长电池寿命。 **UFS 3.1的关键特性** 1. **高速接口**:UFS 3.1的理论最大数据传输速度可以达到11.6 Gbps,是UFS ...