Web统计图表解决方案

2008-04-10 02:47:58来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

随着Internet技术的兴起,B/S结构的程序出现得越来越多,在Web上实现统计图表的方法有很多,相对于一般的应用程序实现比较难些。本文主要介绍Web统计图表的实现方法,对各种信息进行统计和分析,为提供决策依据,形象地表现分析结果,让信息用柱状图、折线图和圆饼图等结合数据仓库旋转分析以直观的形式表现出来!我们很多项目中都需要用到图表,查看了网上一些文章,B/S结构中大多使用了MS chart、shortGraph、Aspchart等组件实现,这些组件大多都是国外软件公司开发的,且需要Money才行,最终的效果看起来并不怎么样(个人觉得),并且有很一些缺点,如MS chart客户端得装有Office才行,否则无法使用。另外还有一些使用Applet实现的,如Java chart工具包,这个工具包是Java写的,适用于支持Java Applet的浏览器,如果不用Java的话,一般的应用程序很难使用它们。
本文就提供一统计图表解决方案给你,当然你完全可以用于所有支持ActiveX的地方,不只是Web中。看完本文,我想你也能通过ASP、VBScript、Javascript来完成统计图表。最重要的是你可以写上 Copyright(C),yourcompany...,客户端让浏览器自动下载注册,无需安装。
下面就用Delphi简单的开发一个可以在浏览器上生成统计图表的ActiveX(用BCB开发是一样的,只是代码有点点不同而已):
首先,打开Delphi,通过菜单File->new,在New items中选取Acitvex Form,在AcitveForm winzard中New AcitveX Name输入自定名: 如Mychart,下面的选项可以根据需要自行选定,这里只选取Include AboutBox, 这样delphi会自动生成一个关于对话框。 在Mychart窗口中放置一个Tchart组件,Tchart增加一个Bar形的Series,具体的情况可以自行设定,本文只做简单的介绍, 建议用方法动态生成Series。
在菜单view->Type Libary ,这里分别添加两个方法:
Add_data和Clear_data,作用分别是添加数据和清除数据。
Add_data方法中添加两个参数(ANum,类型:double, AName,类型:BSTR, Modifier 都设为in)
代码如下:
procedure TMychart.Add_data(ANum:Double;const AName:WideString);
begin
Series1.Add(ANum,AName,clteeColor);
end;
procedure TMychart.Clear_data;
begin
Series1.clear;
end;
设置一下Aboutbox,在Mychart窗口中加入一个TPopupMenu,用户弹出菜单看到关于对话框。 添加一个Menuitem设置Caption:="关于(&A)...", onclick代码如下:
procedure TMychart.PM_AboutClick(sender:TObject);
begin
showMychartAbout;
end;
作用是显示关于对话框然后设置TChart的PopupMenu设置为加个的TPopupMenu就可以了!
如果工程名没有更改的,编译一下生成MychartProj1.ocx,注册这个控件就可以使用了。
对于浏览器,可以用下面方法让其它自动注册它:
Delphi中通过Project->Web Deloyment Options设置Web发布选项,简单设置如下:
Target dir: c:\document and settings\administrator\桌面\chart\html
Target URL: .
Html dir : c:\document and settings\administrator\桌面\chart\html
然后通过菜单 project -> web Deploy 在 c:\document and settings\administrator\桌面\chart\html 目录下生成两个文件,一个html,另一个ocx文件。
这里更改一下HTML文件加上个ID=mychart1,后面加些VBScript代码,如下:
<HTML>
<H1> Delphi 5 AcitveX Test Page </H1> <P>
You should see you Delphi 5 forms or controls embedded in the form below
<HR><center><P>
<OBJECT id=mychart1
classid="clsid:B977D48F1-4DDA-4F00-9781-EC7BA3278CBD"
codebase=" ./MychartProj1.oxc#version=1,0,0,0"
width=538
height=350
align=center
hspace=0
vspace=0
>
</OBJECT>
<script language=VBScript>
mychart1.Add_data 110,"1月"
mychart1.Add_data 180,"2月"
mychart1.Add_data 120,"3月"

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:面对对象的思考(二)

下一篇:反思,然后进步-再论系统件开发模式