系统要求:
1. Macromedia's Flash MX software,现在的最新版是简体中文2004;
2. Macromedia Extension Manager,管理Macromedia Software系列软件插件的管理包,提供对Fireworks、Flash、Dreamweaver等软件的扩充性支持;
3. Flash Charting Components,制作统计图形的插件、提供三种格式的统计图形:线性图、饼状图和柱形图。
优势:
1. 不用在WEB服务器上安装COM组件;
2. 减少WEB服务端载入过程,因为服务器端只需要提供生成统计图形的数据,而在客户端完成图形的生成;
3. Flash Charting Components支持所有的服务端脚本,如asp、asp.net、jsp、php、perl、cgi和CF等等;
4. 利用Flash Charting Components有很多优势,作Banner、保护WEB数据等等。这就不介绍,大家各自挖掘。
制作过程:
1. 如果还没有Macromedia’s Flash MX software,请下载一个安装;
2. 安装Macromedia Extension Manager;
3. 利用Macromedia Extension Manager为Macromedia’s Flash MX software安装Macromedia Flash Charting Components。方法是运行Macromedia Extension Manager然后在“file”菜单选择“install extension…”,在弹出的对话框中输入Flash Chating Components.mxp文件,点击“install”,就行,安装完后如图一所示:
图一
1. 创建第一个静态的统计图形;
①打开Flash MX,新建一个文档,双击默认图层给它命名一个名字,比如Bar Chart然后设置它的宽度和高度分别为400px和300px,如图二所示:
图二
②打开组件模板(CTRL-F7),展开“Flash Charting Components”,拖拽一个统计图形到你的图层场景上,本文中使用柱状图形(Bar Chart),给它起一个名字,比如MovChart,设置它的宽度和高度分别为390px和290px,如图三所示:
图三
③然后就是写控制脚本。新建一个图层,把它命名为Actions,按F9打开脚本编辑框,在编辑框按图四所示输入Actions脚本:
图四
④至于怎么写,大家看帮助,最简单的是在脚本编辑框上方点击“+”按钮,然后在下拉菜单选择对应组件,然后在组件的扩展菜单中选择方法,最后选定某一个具体的方法添加到脚本编辑框,在脚本编辑框中输入相应参数即可。写完后点击语法检查,看看你的输入有没有误,错则改之,无则加勉:);
⑤最后在“文件”菜单选择“导出—〉导出影片”,保存到你的本地目录。至此,你的第一个统计图就做好了,选择在IE中打开此文件,看看实际效果,如图五所示:
图五
1. 创建动态的统计图形;
①上面讲的是如何创建基本的静态的统计图形,接下来将要讲如何创建一个动态的统计图形
②在创建动态的统计图形之前,让我们先了解一下FlashCharts是如何工作的。
I.首先,FlashCharts是一种可以接受从服务器端传来的预定义好图像结构参数的XML文档数据的影片格式。并把这种XML文档数据解释为自己的图像格式。所以,我们首先就要知道XML是如何定义图像参数的,然后才是了解在FlashCharts中如何利用XML文档数据来产生图像的。
II.上面的数据通信模式可以用以下图六来表示:
图六
III.以上模式可以简单地用以下步骤来阐述:
a.HTML向FlashCharts发出包含SWF文件和XML文档的URL页面请求,如下所示:
<OBJECT >
...
<PARAM NAME=movie VALUE="FlashCharts.swf?dataUrl=Data.xml">
...
</OBJECT>
b.FlashCharts收到请求后,立马向URL请求XML文档数据;
c.URL从数据库中查讯数据生成XML文档,并把它放到输出流中;
d.FlashCharts接收到XML文档数据并按XML文档中定义的参数和数据把它表示为图形格式。
IV.现在我们就来看看XML文档数据的结构。如下例所示:
<graph chartType="PIE" caption="Hits for the first half (in thousands)"
xaxisname="Month" yaxisname="Hits" >
<set name="Jan" value="20" link="showBreakUp.asp?month=Jan"/>
<set name="Feb" value="9" link="showBreakUp.asp?month=Feb"/>
<set name="Mar" value="7" link="showBreakUp.asp?month=Mar"/>
<set name ="Apr" value="40" link="showBreakUp.asp?month=Apr"/>
<set name="May" value="23" link="showBreakUp.asp?month=May"/>
<set name="Jun" value="34" link="showBreakUp.asp?month=Jun"/>
<set name="Jul" value="19" link="showBreakUp.asp?month=Jul"/>
</graph>
a.graphy元素中的chartType指明使用那种统计图形格式;
b.graphy元素中的caption指明统计图的主题是什么;
c.graphy元素中的xaxisname指明统计图的横向坐标的主题是什么;
d.graphy元素中的yaxisname指明统计图的纵向坐标的主题是什么;
e.graphy元素中的节点包含具体的横向、纵向坐标数据和连接。
③接下来就动手制作动态统计图表,如前面创建静态统计图一样,打开Flash MX软件。
I.新创建一个400x300px的影片;
II.打开场景面板(SHIFT+F2),重新命名默认场景为Loading,再新建一个场景命名为Chart。如图七所示:
图七
说明:Loading场景展示给用户等待载入统计图那段时间所看到的图形,Chart场景是实际要看到的动态统计图形。
III.在Loading场景中就任由你设置了,简介、广告等什么都可以,根据实际需要定;在此场景我们需要实现两个功能:
a.获取影片的大小和已载入影片的大小,方法是在Loading场景中新建一个图层,在图层中新建一个关键帧,在帧的脚本中输入以下代码:
totalBytes = _root.getBytesTotal();
loadedBytes = _root.getBytesLoaded();
b.比较两者的大小,进行相应处理,代码如下:
if (loadedBytes<totalBytes) {
//显示此场景
gotoAndPlay("Start");
} else {
//转到Chart场景
gotoAndPlay("Chart", "LoadXML");
}
IV.回到Chart场景,按下图八所示创建图层和帧。
图八
现在不用担心上面都创建的是什么,后面会一一介绍;
V.给图八中的Labels图层顺序创建如下关键帧:
Frame 1
LoadXML
后台实际装载XML数据的帧
Frame 2
LoadingXML
在装载数据时弹出消息的帧
Frame 3
ParseXML
分析数据并载入数组和变量中的帧
Frame 4
SetDefaults
决定显示那种格式的统计图形的帧
Frame 5
BarChart
显示柱状图的帧
Frame 6
LineChart
显示线性图的帧
Frame 7
PieChart
显示饼状图的帧
Frame 8
XMLError
显示错误消息的帧
待续(下)