C#-绘制统计图(柱状图--折线图--扇形图).doc

C#-绘制统计图(柱状图--折线图--扇形图).doc

ID:57269842

大小:1.87 MB

页数:26页

时间:2020-08-08

C#-绘制统计图(柱状图--折线图--扇形图).doc_第1页
C#-绘制统计图(柱状图--折线图--扇形图).doc_第2页
C#-绘制统计图(柱状图--折线图--扇形图).doc_第3页
C#-绘制统计图(柱状图--折线图--扇形图).doc_第4页
C#-绘制统计图(柱状图--折线图--扇形图).doc_第5页
资源描述:

《C#-绘制统计图(柱状图--折线图--扇形图).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C#绘制统计图(柱状图,折线图,扇形图)统计图形种类繁多,有柱状图,折线图,扇形图等等,而统计图形的绘制方法也有很多,有Flash制作的统计图形,有水晶报表生成统计图形,有专门制图软件制作,也有编程语言自己制作的;这里我们用就C#制作三款最经典的统计图:柱状图,折线图和扇形图;既然是统计,当然需要数据,这里演示的数据存于SqlServer2000中,三款统计图形都是动态生成.其中柱状图我会附上制作步骤,其他两款统计图直接附源码.说明:需求不一样,统计图形绘制后的显示效果也不一样,比如这里柱状图的主要需求是为了比较每一期报名人数与通过人数的差,因此会把两根柱

2、子放在一起会使比较结果一目了然.因此大家可以根据需要灵活绘制.一.柱状图的绘制.绘制步骤如下:1.定义绘图用到的类.intheight=500,width=700;Bitmapimage=newBitmap(width,height);Graphicsg=Graphics.FromImage(image);Penmypen=newPen(brush,1);2.绘制图框.g.FillRectangle(Brushes.WhiteSmoke,0,0,width,height);3.绘制横向坐标线for(inti=0;i<14;i++){g.DrawLine(m

3、ypen,x,80,x,340);x=x+40;}4.绘制纵向坐标线for(inti=0;i<9;i++){g.DrawLine(mypen,60,y,620,y);y=y+26;}5.绘制横坐标值String[]n={"第一期","第二期","第三期","第四期","全年"};for(inti=0;i<7;i++){g.DrawString(n[i].ToString(),font,Brushes.Blue,x,348);x=x+78;}6.绘制纵坐标值String[]m={"250","225","200","175","150","125","100

4、“};for(inti=0;i<10;i++){g.DrawString(m[i].ToString(),font,Brushes.Blue,25,y);y=y+26;}7.定义数组存储数据库中统计的数据int[]Count1=newint[7];//存储从数据库读取的报名人数int[]Count2=newint[7];//存储从数据库读取的通过人数8.从数据库中读取报名人数与通过人数SqlConnectionCon=newSqlConnection("Server=(Local);Database=committeeTraining;");Con.Ope

5、n();stringcmdtxt2="SELECT*FROM##CountwhereCompany='"+****+"'";SqlDataAdapterda=newSqlDataAdapter(cmdtxt2,Con);DataSetds=newDataSet();da.Fill(ds);9.将读取的数据存储到数组中Count1[0]=Convert.ToInt32(ds.Tables[0].Rows[0][“count1”].ToString());Count1[1]=Convert.ToInt32(ds.Tables[0].Rows[0][“count

6、3”].ToString());Count2[0]=Convert.ToInt32(ds.Tables[0].Rows[0][“count2”].ToString());Count2[1]=Convert.ToInt32(ds.Tables[0].Rows[0]["count4"].ToString());10.定义画笔和画刷准备绘图x=80;Fontfont2=newSystem.Drawing.Font("Arial",10,FontStyle.Bold);SolidBrushmybrush=newSolidBrush(Color.Red);Solid

7、Brushmybrush2=newSolidBrush(Color.Green);11.根据数组中的值绘制柱状图(1)第一期报名人数g.FillRectangle(mybrush,x,340-Count1[0],20,Count1[0]);g.DrawString(Count1[0].ToString(),font2,Brushes.Red,x,340-Count1[0]-15);(2)第一期通过人数x=x+20;g.FillRectangle(mybrush2,x,340-Count2[0],20,Count2[0]);g.DrawString(Coun

8、t2[0].ToString(),font2,Brushes.Gr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。