快速业务通道

在ASP.NET页面中实现数据棒图

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
ack , new Point ( 525 , 12 ) ) ;
for ( int i = 0 ; i < sMoth.Length ; i++ )
{
g .DrawRectangle ( Pens.Black , myRec .X , myRec .Y , 20 , 10 ) ;
//绘制小方块
g .FillRectangle ( new SolidBrush ( GetColor ( i ) ) , myRec .X , myRec .Y , 20 , 10 ) ;
//填充小方块
g .DrawString ( sMoth [ i ] .ToString ( ) , new Font ( "宋体" , 9 ) , Brushes .Black , myDec ) ;
//绘制小方块右边的文字
myRec .Y += 15 ;
myDec .Y += 15 ;
}

4.根据从数据库中读取的数据,绘制数据Bar图:

此部分与第三部分比较类似,最主要的区别在于,绘制的位置不相同,下面代码是在图01中绘制数据Bar图,并提示Bar图所代表的数量:

int iBarWidth = 40 ;
int scale = 10 ;
for ( int i = 0 ; i < iXiaoSH .Length ; i++ )
{
g .DrawRectangle ( Pens.Black , ( i * iBarWidth ) + 15 , 250 - ( iXiaoSH [ i ] * scale ) , 20 , ( iXiaoSH [ i ] * scale ) + 5 ) ;
//绘制Bar图
g .FillRectangle ( new SolidBrush ( GetColor ( i ) ) , ( i * iBarWidth ) + 15 , 250 - ( iXiaoSH [ i ] * scale ) , 20 , ( iXiaoSH [ i ] * scale ) + 5 ) ;
//以指定的色彩填充Bar图
g .DrawString ( iXiaoSH [ i ] .ToString ( ) , new Font ( "宋体" , 9 ) , Brushes .Black , ( i * iBarWidth ) + 20 , 235 - ( iXiaoSH [ i ] * scale ) ) ;
//显示Bar图代表的数据
}

5.绘制图片边框,并形成Jpeg文件格式在客户端显示:

绘制图片边框,使用的Graphics实例中的DrawRectangle方法。至于采用Jpeg格式文件在客户端显示,是因为Jpeg文件占用的空间较小,利于网络传送。下面代码是绘制图01中的边框,并形成Jpeg文件:

Pen p = new Pen ( Color.Black , 2 ) ;
g .DrawRectangle ( p , 1 , 1 , 598 , 248 ) ;
bm.Save ( Response .OutputStream , ImageFormat .Jpeg ) ;

四.ASP.NET页面中实现数据Bar图实现步骤:

掌握了上面的关键步骤及其解决方法后,在ASP.NET实现数据Bar相对就容易许多了,下面是ASP.NET页面中实现数据Bar图的具体实现步骤,在开发工具上选用的是Visual Stuido .Net企业构建版,采用的开发语言是C#。

1.启动Visual Studio .Net

2.选择菜单【文件】|【新建】|【项目】后,弹出【新建项目】对话框

3.将【项目类型】设置为【Visual C#项目】

4.将【模板】设置为【ASP.NET Web 应用程序】

5.在【位置】的文本框中输入"http://localhost/Bar"。然后单击【确定】按钮,这样在Visual Studio .Net就会在当前项目文件所在目录中建立一个名称为"Bar"文件夹,里面存放是此项目的项目文件,项目中的其他文件存放的位置是计算机Internet信息服务的默认的Web站点所在的目录中新建的一个名称为"Bar"的文件夹中。具体如图02所示:

在ASP.NET页面中实现数据棒图

图02:新建一个ASP.NET项目对话框

6.把Visual Studio .Net的当前窗口切换到WebForm的代码编辑窗口,即:WebForm1.aspx.cs文件的编辑窗口。

7.在WebForm1.aspx.cs文件首部,用下列代码替换WebForm1.aspx.cs中导入命名空间的代码:

using System ;
using System .Collections ;
using System .ComponentModel ;
using System .Data ;
using System .Drawing ;
using System .Web ;
using System .Web .SessionState ;
using System .Web .UI ;
using System .Web .UI .WebControls ;
using System .Web .UI .HtmlControls ;
using System .Drawing .Imaging ;
//下面程序中使用的ImageFormat类所在的命名空间
using System .Data .OleDb ;
//下面程序中使用到关于数据库方面的类所在的命名空间

8.WebForm1.aspx.cs文件中的Page_Load事件处理代码中添加下列代码

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号