支持xml格式和json格式的数据。

用法很简单。

1.需要引入FusionCharts.js.

2.html中定义个id="chart"的div

<div id="chart"></div>

3.js代码调用即可

(一)xml格式。

var dataXml = "<graph caption='每月销售额柱形图' xAxisName='月份' yAxisName='Units' showNames='1' decimalPrecision='0' formatNumberScale='0'><set name='一月' value='462' color='AFD8F8' /><set name='二月' value='857' color='F6BD0F' /><set name='三月' value='671' color='8BBA00' /><set name='四月' value='494' color='FF8E46' /><set name='五月' value='761' color='008E8E' /><set name='六月' value='960' color='D64646' /><set name='七月' value='629' color='8E468E' /><set name='八月' value='622' color='588526' /><set name='九月' value='376' color='B3AA00' /><set name='十月' value='494' color='008ED6' /><set name='十一月' value='761' color='9D080D' /><set name='十二月' value='960' color='A186BE' /></graph>";

var myChart = new FusionCharts("${base}/thirdparty/FusionCharts/ChartsV3/Charts/Pie3D.swf", "myChartId_00", "500", "400");//参数分别为【需要使用的swf样式】,【chart的id(同一个页面有多个chart避免重复)】,【width】,【height】
//myChart.setJSONData(${jsondata!});
myChart.setDataURL(dataXml);
myChart.render("chart");

(二)json

  1. //使用json数据
  2. var  MSLine = new FusionCharts("flex/fusioncharts/MSLine.swf", "MSLineID", "460", "350", "0", "1");   MSLine.setJSONData({
  3. "chart":{
  4. "caption":"Business Results 2005 v 2006",
  5. "xaxisname":"Month",
  6. "yaxisname":"Revenue",
  7. "showvalues":"0",
  8. "numberprefix":"$"  },
  9. "categories":[{
  10. "category":[
  11. {          "label":"Jan"        },
  12. {          "label":"Feb"        },
  13. {          "label":"Mar"        },
  14. {          "label":"Apr"        },
  15. {          "label":"May"        },
  16. {          "label":"Jun"        },
  17. {          "label":"Jul"        },
  18. {          "label":"Aug"        },
  19. {          "label":"Sep"        },
  20. {          "label":"Oct"        },
  21. {          "label":"Nov"        },
  22. {          "label":"Dec"        }]
  23. }
  24. ],
  25. "dataset":[
  26. {
  27. "seriesname":"2006",
  28. "data":[
  29. {          "value":"27400"        },
  30. {          "value":"29800"        },
  31. {          "value":"25800"        },
  32. {          "value":"26800"        },
  33. {          "value":"29600"        },
  34. {          "value":"32600"        },
  35. {          "value":"31800"        },
  36. {          "value":"36700"        },
  37. {          "value":"29700"        },
  38. {          "value":"31900"        },
  39. {          "value":"34800"        },
  40. {          "value":"24800"        }      ]    },
  41. {   "seriesname":"2007",
  42. "data":[
  43. {          "value":"27900"        },
  44. {          "value":"29800"        },
  45. {          "value":"15800"        },
  46. {          "value":"24800"        },
  47. {          "value":"19600"        },
  48. {          "value":"32600"        },
  49. {          "value":"35800"        },
  50. {          "value":"31700"        },
  51. {          "value":"39700"        },
  52. {          "value":"51900"        },
  53. {          "value":"14800"        },
  54. {          "value":"20800"        }      ]    },
  55. {   "seriesname":"2005",
  56. "data":[{        "value":"10000"        },
  57. {          "value":"11500"        },
  58. {          "value":"12500"        },
  59. {          "value":"15000"        },
  60. {          "value":"11000"        },
  61. {          "value":"9800"         },
  62. {          "value":"11800"        },
  63. {          "value":"19700"        },
  64. {          "value":"21700"        },
  65. {          "value":"21900"        },
  66. {          "value":"22900"        },
  67. {          "value":"20800"        }      ]    }  ],
  68. "trendlines":{
  69. "line":[{        "startvalue":"26000",
  70. "color":"91C728",
  71. "displayvalue":"Target",
  72. "showontop":"1"
  73. }]
  74. },
  75. "styles":[{
  76. "definition":[{
  77. "style":[{          "name":"CanvasAnim",
  78. "type":"animation",
  79. "param":"_xScale",
  80. "start":"0",
  81. "duration":"1"
  82. }]
  83. }],
  84. "application":[{
  85. "apply":[{         "toobject":"Canvas",
  86. "styles":"CanvasAnim"
  87. }]
  88. }]
  89. }]
  90. });

//如果java代码生成,可以理解为整个是map,chart是纯map格式的,data是map中包含了list<Map>。

Map<String,Object> chart = new HashMap<String, Object>();//图表属性
chart.put("caption", "图表标题");//图表标题
chart.put("bgcolor", "F2F8EF");//bgcolor
chart.put("showborder", "0");//border
chart.put("exportenabled", "1");//export
chart.put("exportshowmenuitem", "1");//export
chart.put("logoalpha", "30");//alpha
chart.put("useroundedges", "1");
chart.put("yaxisname", "Sales Figure");
chart.put("logoposition", "CC");

List<Map<String,Object>> datalist = new ArrayList<Map<String ,Object>>();//组织数据List<Map>

for(Map<String,Object> m :queryListC){
Map<String,Object> map = new HashMap<String, Object>();
map.put("label", "xxx");
map.put("value", value);
datalist.add(map);
}

Map<String ,Object> jsondataMap = new HashMap<String, Object>();//最终json仍然是map,需要把前面的数据放入

jsondataMap.put("data", datalist);
jsondataMap.put("chart", chart);

最终将数据返回js

model.put("jsondata", net.sf.json.JSONObject.fromObject(jsondataMap).toString().replace("\"", "'"));

以上是fusionCharts的基本用法。fusionCharts功能很强大,能实现精美的图标功能,可以上官网查看demo。

fusioncharts 用法实例的更多相关文章

  1. php中的curl使用入门教程和常见用法实例

    摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...

  2. 上传文件及$_FILES的用法实例

    Session变量($_SESSION):�php的SESSION函数产生的数据,都以超全局变量的方式,存放在$_SESSION变量中.1.Session简介SESSION也称为会话期,其是存储在服务 ...

  3. C++语言中cin cin.getline cin.get getline gets getchar 的用法实例

    #include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get g ...

  4. Union all的用法实例sql

    ---Union all的用法实例sqlSELECT TOP (100) PERCENT ID, bid_user_id, UserName, amount, createtime, borrowTy ...

  5. 【转】javascript入门系列演示·三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  6. php strpos 用法实例教程

    定义和用法该strpos ( )函数返回的立场,首次出现了一系列内部其他字串. 如果字符串是没有发现,此功能返回FALSE . 语法 strpos(string,find,start) Paramet ...

  7. 【JSP】三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  8. python多线程threading.Lock锁用法实例

    本文实例讲述了python多线程threading.Lock锁的用法实例,分享给大家供大家参考.具体分析如下: python的锁可以独立提取出来 mutex = threading.Lock() #锁 ...

  9. jQuery中on()方法用法实例详解

    这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能及各种常见的使用技巧,并对比分析了与bind(),live(),delegate()等方法的区别,需要的朋友可以参考下 本 ...

随机推荐

  1. 蒙特卡洛法MATLAB

    %%unifrnd函数的使用 %unifrnd函数可以创建随机的连续均匀分布的数组,一般式为R=unifrnd(A,B); %A和B是标量或者相同维数的行向量或者列向量.R=unifrnd(A,B,[ ...

  2. DB11 TCP数据协议拆包接收主要方法

    北京地标(DB11) 据接收器. /// <summary> /// DB11协议拆包器 /// </summary> public class SplictProtocol ...

  3. 2016.7.12 eclipse和IDEA中mybatis generator插件的安装与使用

    Eclipse中的安装 http://jingyan.baidu.com/article/9faa7231506ed8473c28cbee.html 1.下载插件 2.将插件generator的fea ...

  4. IOS之怎样把自己开发的App安装到越狱的手机

    场景: 有开发人员账号,能够把设备加到开发人员账号中,真机调试.如今须要打包,安装到的越狱手机上(此越狱手机没有加到开发人员账号中,另外公司的人). 常识: 没有越狱的话,最大的问题就是设备的签名,每 ...

  5. TCP/IP详解 卷一(第一章 概述)

    很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们相互进行通信. 1.分层 TCP/IP不是一个协议,而是一个协议族,通常它被认为是一个四层的协议系统,下面展 ...

  6. Web前端开发--JS技术大梳理

    什么是JS      JavaScript是一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语 ...

  7. 【ORACLE】ORA-27102: out of memory报错的处理

    ************************************************************************ ****原文:blog.csdn.net/clark_ ...

  8. 王立平--eclipse中改动android项目的版本

    改动版本 1.右键-->properties 2.android.改动须要的版本 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzQyNTU ...

  9. 效率提升最重要的原则 - Doing one thing at a time

    前段时间流行的时间管理方法 - url=NotLrz-4f4eCgENFAECrXNw88mSLoJ2Rc2MrkP4aes1yQvPjNQRlmdYcbz9oP9U8JoBzJeY-DSUhhInx ...

  10. SpringBoot启动流程分析(二):SpringApplication的run方法

    SpringBoot系列文章简介 SpringBoot源码阅读辅助篇: Spring IoC容器与应用上下文的设计与实现 SpringBoot启动流程源码分析: SpringBoot启动流程分析(一) ...