1.建立图表步骤:

A.下载fushionChart,引入FusionCharts.js和FusionChartsExportComponent.js文件

B.建立图表对象

var chart1 = new FusionCharts(imgUrl, "chart1Id", "800", "400","0","1");

param1:使用的flash文件的路径

param2:对象ID

param3:图表长

param4:图表高

param5:是否显示Debug信息

param6:使用图片导出时需置为1

C:设置图表对象对应XML内容

使用JSON数据,拼接为XML格式数据

XML格式如下

//简单格式

<chart caption='省份-营收饼图' xAxisName='省份' yAxisName='营收' baseFont='宋体' baseFontSize='12' exportEnabled='1' exportAtClient='1' exportHandler='fcExporter1' >
<set name='广东' value='14.9' />
<set name='湖南' value='3.3' />
</chart> //复杂格式 双Y轴
<chart palette='2' caption='自定义图表' rotateNames='0' showValues='1' divLineDecimalPrecision='1' limitsDecimalPrecision='1' formatNumberScale='1' exportEnabled='1' exportAtClient='1' exportHandler='fcExporter1'>
<categories> //x轴值 dataset中的值个数需与之一致
<category label='2015第2季度' />
<category label='2015第3季度' />
</categories>
<dataset renderAs='Line' parentYAxis='S' seriesName='用户数量'>
<set value='4' />
<set value='1' />
</dataset>
<dataset renderAs='Line' parentYAxis='S' seriesName='人均消费金额'>
<set value='3.725' />
<set value='3.3' />
</dataset>
</chart>

将拼接好的字符串设置-->

chart1.setDataXML(strXML);

strXML为拼接好的XML字符创

D:render至DIV中

chart1.render("container");  container为html中id为此的div空标签

至此,图表建立完毕,接下来进行图表的导出

2.图表的导出

A:在拼接的字符串中的chart元素中,增加属性exportEnabled='1' exportAtClient='1' exportHandler='fcExporter1'

B:在图表render之后代码下,配置导出图表的对象及按钮样式

var myExportComponent = new FusionChartsExportObject("fcExporter1", "/adminthemes/FusionCharts/FCExporter.swf");  //该flase文件是固定路径,第一个参数要与chart元素属性exportHandler一致
myExportComponent.componentAttributes.btnColor = 'EAF4FD';
myExportComponent.componentAttributes.btnBorderColor = '0372AB';
myExportComponent.componentAttributes.btnFontFace = 'Verdana';
myExportComponent.componentAttributes.btnFontColor = '0372AB';
myExportComponent.componentAttributes.btnFontSize = '12';
//Title of button
myExportComponent.componentAttributes.btnsavetitle = '另存为'
myExportComponent.componentAttributes.btndisabledtitle = '右键生成图片';
myExportComponent.Render("fcexpDiv");

至此,导出亦可以使用,不过有个Bug,当对此调用这个myExportComponent对象时候,第二次将无法使用

对此,我找遍百度也没找到解决方式,最后,自己观察这控件自动生成的代码得出结论,将自动生成的object标签的id更改为第一次载入的时候的id即可,即:

//更改object标签id使之初始化
$("#fcexpDiv object").attr("id","fcExporter1");

只有这样,object标签才会初始化,而通过删除其自动生成的代码并无法正在初始化,原因不明.

fushioncharts 使用教程要点---使用JSON数据方式的更多相关文章

  1. 【Spring学习笔记-MVC-3.1】SpringMVC返回Json数据-方式1-扩展

    <Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...

  2. 【Spring学习笔记-MVC-4】SpringMVC返回Json数据-方式2

    <Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...

  3. 【Spring学习笔记-MVC-3】SpringMVC返回Json数据-方式1

    <Spring学习笔记-MVC>系列文章,讲解返回json数据的文章共有3篇,分别为: [Spring学习笔记-MVC-3]SpringMVC返回Json数据-方式1:http://www ...

  4. H5本地存储详细使用教程(localStorage + JSON数据存储应用框架)

    一.Web Storage教程 1.概述: 对于Web Storage来说,实际上是Cookies存储的进化版.如果了解Cookie的人几乎一看Web Storage就会用,如果你从来没用过没了解过C ...

  5. springmvc接收json数据的常见方式

    经常使用Ajax异步请求来进行数据传输,传的数据是json数据,json数据又有对象,数组.所有总结下springmvc获取前端传来的json数据方式:1.以RequestParam接收前端传来的是j ...

  6. js中json数据简单处理(JSON.parse()和js中嵌套html)

    js中json数据简单处理(JSON.parse()和js中嵌套html) 一.总结 1.html中嵌套js:<script>js代码</script> 2.js中嵌套html ...

  7. Swift 与 JSON 数据

    转载自: http://www.cnblogs.com/theswiftworld/p/4660177.html 我们大家平时在开发 App 的时候,相信接触最多的就是 JSON 数据了.只要你的 A ...

  8. Swift 与 JSON 数据 浅析

    转载自:http://www.cnblogs.com/theswiftworld/p/4660177.html 我们大家平时在开发 App 的时候,相信接触最多的就是 JSON 数据了.只要你的 Ap ...

  9. 【Spring学习笔记-MVC-5】利用spring MVC框架,实现ajax异步请求以及json数据的返回

    作者:ssslinppp      时间:2015年5月26日 15:32:51 1. 摘要 本文讲解如何利用spring MVC框架,实现ajax异步请求以及json数据的返回. Spring MV ...

随机推荐

  1. js函数前面写上分号的原因

    说个之前先说,网站上传一些文件,考虑到性能问题,会用一些压缩软件来压缩代码(grunt,glup,webpack,etc..),这时候就可能出现一个问题.看下面代码 (function a(){... ...

  2. java 的 linq,不要再写令人讨厌的 for 了!

    package com.ly.linq; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator ...

  3. bean生命周期

    一.Bean的定义Spring通常通过配置文件定义Bean.如:xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:s ...

  4. List接口、Set接口、Map接口的方法

    一.Collection接口中的方法介绍 int size();返回此Collection中的元素数 boolean isEmpty(); 判断是否为空 boolean containsAll(Col ...

  5. 原生js通过prottype写的一个简单拖拽

    <!DOCTYPE html> <head> <meta charset="utf-8"/> <title></title&g ...

  6. 一个会Flash的人来说CSS3

    以前在上大学的时候学过Flash,而且以前做一些网页效果都是用的Flash,现在才知道以前我所用的方法是有多麻烦.在学过CSS3之后,我发现以前要用Flash写半天的效果,现在用几句CSS3代码就搞定 ...

  7. HDFS读写数据块--${dfs.data.dir}选择策略

    最近工作需要,看了HDFS读写数据块这部分.不过可能跟网上大部分帖子不一样,本文主要写了${dfs.data.dir}的选择策略,也就是block在DataNode上的放置策略.我主要是从我们工作需要 ...

  8. AJAX格式

    var xmlHttp;function getXmlHttp(){ if(window.ActiveXObject){ xmlHttp = new ActiveXObject("MICRO ...

  9. 学习笔记 android fragment

    最近研究了一下fragment的使用方法,总结概要如下: 1.fragment实际上就是把activity拆开后的封装块,一个fragment就是一个封装好的一部分.这样以来可以方便复用. 2.fra ...

  10. 怎么将Android studio 的“ build:gradle改低一点”

    参考来源:http://bbs.qcloud.com/thread-17193-1-1.html Error:Execution failed for task ':xxxx:compileDebug ...