OpenFlashChart2的使用
来源:互联网 发布:手机微博淘客软件 编辑:程序博客网 时间:2024/06/05 19:06
Open Flash Chart2是依据Open Flash Chart1.x完全重新构建的一个Flash图表绘制组件。与1.x版本最大不同之处在于把数据格式改成JSON,以实现一些更酷的功能。该版本全部采用Actionscript3开发,Adobe Flex编译。
一、JSON数据格式如下:
- {
- /* 图表标题 */
- "title":{
- "text": "标题",
- "style": "{font-size: 20px; color:#0000ff; font-family: Verdana; text-align: center;}"
- },
- /* X轴标题 */
- "x_legend":{
- "text": "X轴标题",
- "style": "{font-size: 12px; color:#736AFF;}"
- },
- /* Y轴标题 */
- "y_legend":{
- "text": "Y轴标题",
- "style": "{color: #736AFF; font-size: 12px;}"
- },
- "is_decimal_separator_comma": 0, /* (0/1),是否用逗号替换小数点 */
- "is_fixed_num_decimals_forced": 1, /* (0/1),是否强制小数点后面的位数 */
- "num_decimals":3, /* 精度,即小数点后面的位数,需要配合上面参数一起使用 */
- "is_thousand_separator_disabled": 0, /* (0/1),是否使用千位分隔符 */
- "x_axis":{
- "stroke":1, /* X轴的粗细 */
- "tick_height": 10, /* X轴刻度的长度 */
- "colour":"#d000d0", /* 颜色 */
- "grid_colour":"#00ff00", /* 网格线的颜色 */
- "offset": 1, /* (0/1), 是否根据数据图形和标签的宽度进行延展 */
- "3d": 0, /* 显示3D */
- "steps": 0.5, /* 刻度间隔 */
- /*"min": 0,
- "max": 8,*/
- "labels": {
- "labels": ["一月","二月","三月","四月","五月","六月","七月","八月",
- {"text":"九月", "visible":true, "colour":"ff0000", "rotate":-60}
- ]
- }
- },
- "y_axis":{
- "stroke": 4,
- "tick_length": 3,
- "colour": "#d000d0",
- "grid_colour": "#00ff00",
- "offset": 0,
- "max": 20,
- "steps": 2
- },
- "elements":[
- {
- "type": "bar", /* 可选值有bar,line,pie等 */
- "alpha": 0.5,
- "colour": "#9933CC",
- "text": "图例一",
- "font-size": 10,
- "values" : [9,6,7,9,5,7,6,9,
- {
- "bottom":0,
- "top":7,
- "colour":"#A03030",
- "tip":"#top#<br>hello<br>#val#",
- "on-click":"#"
- }
- ]
- },
- {
- "type": "bar",
- "alpha": 0.5,
- "colour": "#CC9933",
- "text": "图例二",
- "font-size": 10,
- "values" : [6,7,9,5,7,6,9,7,3]
- }
- ],
- "tooltip":{
- "shadow": false, /* 提示框影子 */
- "stroke": 2, /* 边框粗细 */
- "rounded": 1, /* 边角圆滑程度 */
- "colour":"#00d000", /* 边框颜色 */
- "background":"#d0d0ff", /* 背景颜色 */
- "title":"{font-size: 18px; color: #000000; font-weight:bold;}", /* 标题样式 */
- "body":"{font-size: 10px; color: #000000;}" /* 本体样式 */
- }
- }
二、HTML页面内容参考如下:
- <%@ page language="java" pageEncoding="utf-8"%>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>Open Flash Chart</title>
- <script type="text/javascript" src="js/json/json2.js"></script>
- <script type="text/javascript" src="js/swfobject.js"></script>
- </head>
- <body>
- <div id="my_chart"></div>
- <script type="text/javascript">
- swfobject.embedSWF(
- "open-flash-chart.swf",
- "my_chart",
- "650",
- "300",
- "9.0.0",
- "expressInstall.swf",
- {"data-file":"bar.txt"},
- {"wmode":"transparent"}
- );
- </script>
- </body>
- </html>
bar.txt文件的内容就是json格式的数据
三、数据加载方式有以下几种:
- //数据加载方法一:通过静态的json格式字符串数据
- //ofc2默认会调用 open_flash_chart_data 该方法,方法返回json格式的字符串数据
- function open_flash_chart_data(){
- var data = { }; //json对象
- return JSON.stringify(data);
- }
- //数据加载方法二:通过data-file属性调用action
- //{"data-file":"dataServlet?r=<%=new Random().nextInt()%>"},
- //数据加载方法三:通过data-file属性调用json格式的数据文件
- //{"data-file":"bar.txt"},
- //数据加载方法四:通过Ajax调用action
- function open_flash_chart_data(){
- jQuery.post("dataServlet", function(data){
- var tmp = findSWF("my_chart");
- tmp.load(JSON.stringify(data));
- });
- var emptyData = {
- "title": {"text": ""},
- "elements": []
- };
- return JSON.stringify(emptyData);
- }
- function findSWF(movieName) {
- if (navigator.appName.indexOf("Microsoft")!= -1) {
- return window[movieName];
- } else {
- return document[movieName];
- }
- }
0 0
- OpenFlashChart2的使用
- OpenFlashChart2的使用
- GUID使用的使用
- ${}的使用
- 的使用
- @[],@()的使用
- ->的使用
- +、-、*、/、%的使用
- &&的使用
- %:的使用
- Makefile中使用$$的使用
- Makefile中使用$$的使用
- Red5的使用--使用日志
- prefernce的使用具体使用
- 【工具使用】git 的使用
- 关于使用AsyncTaskLoader的使用
- 使用CABasicAnimation的基本使用
- 使用RocketMQ的客户端使用
- 【翻译】Ext JS 6 Beta发布
- Java集合框架总结(2)——Set接口的使用
- redis系统介绍
- Android优化技术详解-第七章 代码优化(笔记)
- c++基本数据结构的类的用法--栈,队列,链表
- OpenFlashChart2的使用
- shell 练习(function,case,for,select)
- JqueryUI AutoComplate实现文本框搜索,自动补全效果
- Java集合框架总结(3)——TreeSet类的排序问题
- GoF设计模式之适配器模式
- python操作数据库PostgreSQL
- android获得布局的Bitmap对象
- python中函数参数传递的几种方法
- 分支限界和回溯法的对比