amcharts参考总结.docx
- 文档编号:10439076
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:13
- 大小:78.22KB
amcharts参考总结.docx
《amcharts参考总结.docx》由会员分享,可在线阅读,更多相关《amcharts参考总结.docx(13页珍藏版)》请在冰豆网上搜索。
amcharts参考总结
以下是amchart相关资料
总的来说:
amcharts要一个 “配置文件”(setting.xml) , 一个数据文件 (amile_data.xml),一个 SWFObject.js ,一个对应的SWF就可以生成漂亮的统计报表了
1SWFObjectv1.5的对象结构
deconceptutilgetRequestParameter(_2b)//取得url参数value。
_2b是URL的key。
SWFObjectUtilgetPlayerVersion()//取得版本号对象。
major.minor.rev。
cleanupSWFs()//清除页面上所有
SWFObject(_1,id,w,h,_5,c,_7,_8,_9,_a)
//_1:
swf,指定SWF文件路径。
//_id:
id,
//w:
width,属性width。
//h:
height,属性height。
//_5:
version,flash版本,默认自动会去读取本地的flash插件版本的。
//c:
bgcolor,背景色。
//_7:
quality,品质(low,high,autolow,autohigh,best)。
//_8:
xiRedirectUrl
//_9:
redirectUrl
//_a:
url参数
keyuseExpressInstall(_d)//设置xiSWFPath,useExpressInstall属性
setAttribute(_e,_f)//设置属性attributes。
_e是key,_f是value。
getAttribute(_10)//取得属性attributes中的值。
_10是key。
addParam(_l1,_l2)//设置参数params。
_l1是key,_l2是value。
getParams()//取得params。
addVariable(_l3,_l4)//设置变量variables。
_13是key,_14是value。
getVariable(_l5)//取得变量variables中的值。
getVariables()//取得变量variables。
getVariablePairs()//取得变量variables的key=value对数组。
getSWFHTML()//返回flash嵌入的HTML
//例如:
//
write(_20)//写入flash插入的位置。
_20可以是id的名称或者是一个dom结点。
PlayerVersion(_29)//创建版本号对象。
versionIsValid(fv)//验证flash插件的当前版本号是否兼容fv的版本号(大于等于)。
getQueryParamValue=deconcept.util.getRequestParameter;
FlashObject=deconcept.SWFObject;SWFObject=deconcept.SWFObject;
2数据文件
支持csv、xml格式。
csv实际上是一个文本文件,而非excel文件,所以,可以直接使用文本文件来命名。
每一列的数据采用“;”或“,”分隔都可以。
例如:
//amcolumn_data.txt
2003;2.5
2004;4.6
2005;5.8
2006;3.8
2007;4.8
2008;6.8
2009;7.8
3配置文件
例如:
//amcolumn_settings.xml
xmlversion="1.0"encoding="UTF-8"?
>
--chartconfig-->
--[xml](xml/csv)-->
--pluginconfig-->
--valueindicatorpluginissuitableforlinechart,columnchart&xychart-->
--fileshouldbelocatedin"path"folder.positioncanbe"behind"or"above"."behind"meansthatthepluginwillbeloadedbehindgraphs-->
--[line](line/column/xy)thisplugincanbeusedwithlineorwithcolumnchart-->
--[left](left/right/x/y)ifusedwithlinechatuseleftorright,ifusedwithxychart,usexory-->
--[#BBBB00](hexcolorcode)-->
--[100](0-100)-->
--[settings.text_color]-->
--[settings.tex_size]-->
--[0](Number)howmanynumbersaftercommashouldbeshown-->
4在HTML上显示
--savedfromurl=(0013)about:
internet-->
--amcolumnscript-->
YouneedtoupgradeyourFlashPlayer
scripttype="text/javascript"> -- varso=newSWFObject("/amchart/amchart/amcolumn/amcolumn.swf","amcolumn","520","380","8","#FFFFFF");//创建SWFObject对象so.addVariable("path","/amchart/amchart/amcolumn/");//暂时不是很清楚,破解时用到了这个属性。 既然,例子写了,我们也写好了。 so.addVariable("settings_file",encodeURIComponent("amcolumn_settings.xml"));//配置文件so.addVariable("data_file",encodeURIComponent("amcolumn_data.txt"));//数据文件so.addVariable("preloader_color","#000000");//加载时显示的颜色so.write("flashcontent");//在flashcontent位置写入flash插入的HTML// -->
script>
--endofamcolumnscript-->
5破解amchart
没有破解的amchart显示的时候在左上角会出现“chartbyamC”链接,表示是未注册版本,非常讨厌。
原理:
网上看到的。
用SWFDecompiler软件加载swf文件,在Resources下找Action中的MainMoive,代码中有一段如下:
functioncheckKey(serial){
var_l1=com.amcharts.Utils.stripSymbols(serial,"");
_l1=com.amcharts.Utils.stripSymbols(_l1,"\n");
_l1=com.amcharts.Utils.stripSymbols(_l1,"\r");
_l1=com.amcharts.Utils.stripSymbols(_l1,"\r\n");
arr=_l1.split("-");
if(Number(arr[2])+Number(arr[3])!
=8645||Number(arr[2].substr(1,1))-Number(arr[3].substr(2,1))!
=2){
attachMovie("copyright_mc","copyright_mc",1001);}//endif
}//Endofthefunction
这就是序列号的代码,再往下看
key_loader.loadVars(path+"amcharts_key.txt",this,"checkKey",false,"checkKey");
破解:
在swf目录下,新建文件amcharts_key.txt。
输入序列号内容如下:
0000-0000-1422-7223。
保存后测试通过!
真没想到他们会采用这么简单的加密方式!
注意:
测试的时候发现一个问题,即使amcharts_key.txt正确放入SWF文件目录下,也有破解不成功的情况。
1)amcolumn,amline,ampie破解时跟so.addVariable("path","");有关系。
该属性设置错误破解不成功。
2)amstock似乎无法破解!
以上是网上贴的
下面是setting.xml文件一些特别的属性
--GRAPHSSETTINGS.Thesesettingscanalsobespecifiedindatafile,asattributesof
--ifyouareusingXMLdatafile,graph"gid"mustmatchgraph"gid"indatafile-->
--[left](left/right)indicateswhichyaxisshouldbeused-->
--[](graphtitle)-->
--[]线条颜色(hexcolorcode)ifnotdefined,usescolorsfromthisarray:
#FF0000,#0000FF,#00FF00,#FF9900,#CC00CC,#00CCCC,#33FF00,#990000,#000066-->
--[#BBBB00]链接颜色(hexcolorcode)-->
--[100](0-100)是否显示线条,0-100越大越清晰;0浓度为0-->
--[0]线条宽度,不是长度..(Number)0forhairline-->
--[0]线条内填充[tianchong](0-100)ifyouwantthecharttobeareachart,usebiggerthan0value-->
--[grpah.color]填充颜色渐变(hexcolorcode)Separatecolorcodeswithcomasforgradient-->
--[graphcolor]线条提示颜色,例:
鼠标放在某个节点上,弹出提示背景颜色(hexcolorcode)leaveemptytousethesamecolorasgraph-->
--[100]提示背景色渐变(0-100)-->
--[#FFFFFF]提示文字颜色(hexcolorcode)-->
--[]节点显示的方式,例:
square(方型),round(圆型)(square,round,square_outlined,round_outlined,filename.swf)canbeusedpredefinedbulletsorloadedcustombullets.Leaveemptyifyoudon'twanttohavebulletsatall.Outlinedbulletsuseplotareacolorforoutlinecolor-->
--Thechartwilllookforthisfileinamline_pathfolder(amline_pathissetinHTML)-->
--[6]节点显示方式大小渐变(Number)affectsonlypredefined(squareandround)bullets,doesnotchangesizeofcustomloadedbullets-->
--[graphcolor]节点显示颜色(hexcolorcode)affectsonlypredefined(squareandround)bullets,doesnotchangecolorofcustomloadedbullets.Leaveemptytousethesamecolorasgraph-->
--[graphalpha]节点显示大小渐变,跟上面的差不多啊(hexcolorcode)Leaveemptytousethesamealphaasgraph-->
--[false]线条是否隐藏(true/false)villnotbevisibleuntilyoucheckcorrespondingcheckboxinthelegend-->
--[true](true/false)iftrue,balloonindicatingvaluewillbevisiblethenrolloverplotarea-->
--[CDATA[{value}(个)用户注册{description}]]-->
--[{value}
{description}]({title}{value}{series}{description}{percents})Youcanformatanyballoontext:
{title}willbereplacedwithrealtitle,{value}-withvalueandsoon.Youcanaddyourowntextorhtmlcodetoo.-->
--提示信息:
可以显示你想要的任何提示信息,前提是registerGenre.PHP将值放了进来!
动态的获得数据-->
--[]节点处显示信息({title}{value}{series}{description}{percents})Datalabelscandisplayvalue(andmore)nearyourpointontheplotarea.-->
--toavoidoverlapping,datalabels,thesameasbulletsarenotvisibleiftherearemorethenhide_bullets_countdatapointsonplotarea.-->
--[text_color]节点颜色(hexcolorcode)-->
--节点字体大小(Number)-->
--[above]节点数量为0时如何显示below在X轴下面;above在X轴上面(below/above)-->
--[false]是否显示节点垂直线(true/false)whethertodrawverticallinesornot.Ifyouwanttoshowverticallinesonly(withoutthegraph,setline_alphato0-->
--[true](true/false)whethertoshowlegendentryforthisgraphornot-->
amCharts可生成饼图柱状图线图等,细分下来种类很多,官方有很多例子供参考。
下面介绍一下如何使用amCharts。
制作一个报表非常简单,基本包括3个文件:
1.原始报表flash程序(通过动态读取xml数据元素进行显示)
2.flash配置文件(xml)
3.flash数据文件(可以是xml或csv)
flash程序配置文件一般会提前做好,当然也可以动态生成。
而数据文件则是我们主要需要处理的。
首先设计一下图表的样式,编辑flash配置文件。
可以从官方例子里借鉴。
配置文件中几个比较重要的标签:
pie
图表的基本配置,不同种类的图有不同的标签名称。
animation
图表初始化时可为其设置动画,每种图都可有不一样的我特效。
background
图表背景,可以是一张图甚至另一个flash
balloon
设置鼠标经过图表项目时所显示的过滤数据
legend
如有需要,可以为图表单独设立一个说明框
export_as_image
顾名思义,配置图片导出的设置选项
labels
图表标题
plugins
图表还设置了接口,可以引入渲染插件
显示样式设计好了,造个假的数据文件看看效果,如果满意的话就可以写产生数据文件的代码了。
数据文件一般需要动态生成,但不会每次点击都会生成新的数据文件吧?
所以通常会按时间间隔生成数据文件(每小时、每天)。
具体生成方法就不提了。
以上面2图为例,帖一下生成的数据文件的大致格式:
饼图
xml version="1.0" encoding="UTF-8"?
>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- amcharts 参考 总结