fusioncharts 用法实例
支持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
- //使用json数据
- var MSLine = new FusionCharts("flex/fusioncharts/MSLine.swf", "MSLineID", "460", "350", "0", "1"); MSLine.setJSONData({
- "chart":{
- "caption":"Business Results 2005 v 2006",
- "xaxisname":"Month",
- "yaxisname":"Revenue",
- "showvalues":"0",
- "numberprefix":"$" },
- "categories":[{
- "category":[
- { "label":"Jan" },
- { "label":"Feb" },
- { "label":"Mar" },
- { "label":"Apr" },
- { "label":"May" },
- { "label":"Jun" },
- { "label":"Jul" },
- { "label":"Aug" },
- { "label":"Sep" },
- { "label":"Oct" },
- { "label":"Nov" },
- { "label":"Dec" }]
- }
- ],
- "dataset":[
- {
- "seriesname":"2006",
- "data":[
- { "value":"27400" },
- { "value":"29800" },
- { "value":"25800" },
- { "value":"26800" },
- { "value":"29600" },
- { "value":"32600" },
- { "value":"31800" },
- { "value":"36700" },
- { "value":"29700" },
- { "value":"31900" },
- { "value":"34800" },
- { "value":"24800" } ] },
- { "seriesname":"2007",
- "data":[
- { "value":"27900" },
- { "value":"29800" },
- { "value":"15800" },
- { "value":"24800" },
- { "value":"19600" },
- { "value":"32600" },
- { "value":"35800" },
- { "value":"31700" },
- { "value":"39700" },
- { "value":"51900" },
- { "value":"14800" },
- { "value":"20800" } ] },
- { "seriesname":"2005",
- "data":[{ "value":"10000" },
- { "value":"11500" },
- { "value":"12500" },
- { "value":"15000" },
- { "value":"11000" },
- { "value":"9800" },
- { "value":"11800" },
- { "value":"19700" },
- { "value":"21700" },
- { "value":"21900" },
- { "value":"22900" },
- { "value":"20800" } ] } ],
- "trendlines":{
- "line":[{ "startvalue":"26000",
- "color":"91C728",
- "displayvalue":"Target",
- "showontop":"1"
- }]
- },
- "styles":[{
- "definition":[{
- "style":[{ "name":"CanvasAnim",
- "type":"animation",
- "param":"_xScale",
- "start":"0",
- "duration":"1"
- }]
- }],
- "application":[{
- "apply":[{ "toobject":"Canvas",
- "styles":"CanvasAnim"
- }]
- }]
- }]
- });
//如果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 用法实例的更多相关文章
- php中的curl使用入门教程和常见用法实例
摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...
- 上传文件及$_FILES的用法实例
Session变量($_SESSION):�php的SESSION函数产生的数据,都以超全局变量的方式,存放在$_SESSION变量中.1.Session简介SESSION也称为会话期,其是存储在服务 ...
- C++语言中cin cin.getline cin.get getline gets getchar 的用法实例
#include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get g ...
- Union all的用法实例sql
---Union all的用法实例sqlSELECT TOP (100) PERCENT ID, bid_user_id, UserName, amount, createtime, borrowTy ...
- 【转】javascript入门系列演示·三种弹出对话框的用法实例
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- php strpos 用法实例教程
定义和用法该strpos ( )函数返回的立场,首次出现了一系列内部其他字串. 如果字符串是没有发现,此功能返回FALSE . 语法 strpos(string,find,start) Paramet ...
- 【JSP】三种弹出对话框的用法实例
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- python多线程threading.Lock锁用法实例
本文实例讲述了python多线程threading.Lock锁的用法实例,分享给大家供大家参考.具体分析如下: python的锁可以独立提取出来 mutex = threading.Lock() #锁 ...
- jQuery中on()方法用法实例详解
这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能及各种常见的使用技巧,并对比分析了与bind(),live(),delegate()等方法的区别,需要的朋友可以参考下 本 ...
随机推荐
- asp.net简单定时任务实现
代码如下: public class TimeTask { #region 单例 private static TimeTask _task = null; public static TimeTas ...
- Windbg调试Sql Server 进程
http://blog.csdn.net/bcbobo21cn/article/details/52261466 http://www.sqlservercentral.com/blogs/asche ...
- 从需求的角度去理解Linux系列:总线、设备和驱动
笔者成为博客专家后整理以前原创的嵌入式Linux系列博文,现推出以让更多的读者受益. <从需求的角度去理解linux系列:总线.设备和驱动>是一篇有关如何学习嵌入式Linux系统的方法论文 ...
- ElasticSearch命令增加字段总结
1.建立一个String类型的字段 curl -XPUT http://192.168.46.163:9200/t_risk_case/_mapping/t_risk_case?pretty -d ' ...
- Activity入门(一)
生命周期 onCreate():activity进行创建,在该方法中应调用setContentView(),findViewById()以及获取要展示的数据的方法(如调用manager ...
- 《linux 内核全然剖析》 mktime.c
tm结构体的定义在time.h里面 struct tm { int tm_sec; int tm_min; int tm_hour; int tm_mday; int tm_mon; int tm_y ...
- NSIS隐藏窗体标题栏自带的button(最大化,最小化,关闭X)
这个问题实在八月份逛csdn论坛的时候偶然遇到的,当时比較好奇楼主为啥要隐藏关闭button.就顺口问了下,结果楼主已经弃楼.未给出原因,猜着可能是为了做自己定义页面美化,无法改变按纽外观之类的,后来 ...
- 又一次认识java(九) ---- 内部类
注意注意!! ! 前排提示!!.本篇文章过长,最好收藏下来慢慢看.假设你之前对内部类不是非常熟悉,一次性看完,大概你会懵逼. . . 1. 内部类概述 一个类的定义放在还有一个类的内部,这个类就叫做内 ...
- Mongo-Hadoop
下载 https://github.com/mongodb/mongo-hadoop/releases 解压到/home/kevin/hadoop/hadoop/share/mongo-hadoop- ...
- 笔记本中LVDS屏与eDP屏的比较
LVDS,即Low Voltage Differential Signaling,是一种低压差分信号技术接口.它是美国NS公司(美国国家半导体公司)为克服以TTL电平方式传输宽带高码率数据时功耗大.E ...