- 5
- 0
- 约7.67千字
- 约 8页
- 2016-09-21 发布于重庆
- 举报
C绘制曲线图和柱状图
在我们程序开发的过程中经常会需要绘制曲线图和柱状图等,尤其是在做统计功能时。但是有时候我们有觉得没有必要使用第三方控件(例如:ZedGraph等),这是我们可以自己编写代码来实现这些图形绘制的功能。以下是我在开发过程中所使用过的两段代码,现共享大家,希望能给大家带来一定的帮助,如有不妥敬请斧正! 1.柱状图,效果图如下 代码如下: 注意:请注意参数 chartTable 图形里的一些元素需要从chartTable里面取。具体请查看代码。 //Render是图形大标题,图开小标题,图形宽度,图形长度,饼图的数据集和饼图的数据集 publicImageRender(stringtitle,intwidth,intheight,DataTablechartTable) { Bitmapbm=newBitmap(width,height); Graphicsg=Graphics.FromImage(bm); g.Clear(Color.White); DataTabledt=chartTable; constinttop=30; constintleft=35; if(widthleft*2||heighttop*2) { g.DrawString(绘图区域太小,newFont(Tahoma,8), Brushes.Blue,newPointF(0,0)); returnbm; } //计算最高的点 floathighPoint=1; foreach(DataRowdrindt.Rows) { if(highPointConvert.ToSingle(dr[0])) { highPoint=Convert.ToSingle(dr[0]); } if(highPointConvert.ToSingle(dr[1])) { highPoint=Convert.ToSingle(dr[1]); } } try { //画大标题 g.DrawString(title,newFont(Tahoma,12),Brushes.Black,newPointF(2,2)); StringFormatdrawFormat=newStringFormat(); drawFormat.FormatFlags=StringFormatFlags.DirectionVertical; g.DrawString([红--+dt.Columns[0].ToString()+],newFont(Tahoma,8), Brushes.Red,newPointF(2,top),drawFormat); g.DrawString([蓝--+dt.Columns[1].ToString()+],newFont(Tahoma,8), Brushes.Blue,newPointF(17,top),drawFormat); //画条形图 floatbarWidth=(Convert.ToSingle(width)-left)/(dt.Rows.Count*3+1); PointFbarOrigin=newPointF(left+barWidth,0); floatbarHeight=dt.Rows.Count; floattopFontSize=(barWidth/highPoint.ToString().Length); if(topFontSize2*top/3) { topFontSize=2*top/3; } if(topFontSize5) { topFontSize=5; } for(inti=0;idt.Rows.Count;i++) { //底部字体的大小 floatbottomFontSize=(2*barWidth/dt.Rows[i][2].ToString().Length)+2; if(botto
您可能关注的文档
- 高中物理寒假作业1(人文).doc
- 高中物理教材.doc
- 高中物理第六章单元检测.doc
- 高中物理选修静场单元检测.doc
- 高中生物2轮高效复习全套之生物专题达标检测4.doc
- 高中生物必修1复习要点.doc
- 高中生物必修二第1章第2节课时活页训练.doc
- 高中级专业技术人员职称评审赋分标准.doc
- 高中英语作文写作模式经典句子总结.doc
- 高中英语作文提分攻略英语作文逻辑连贯的必杀技过渡词.doc
- 克林贝格锥齿轮技术BC12 B27 CS200 说明书用户手册.pdf
- Fengfei广告系统说明书用户手册.pdf
- Megawin兆威8051-Based MCU品类信息型号信息用户手册.pdf
- Microchip Technology Company串行四I O(SQI)闪存SST26VF016 SST26VF032数据手册.pdf
- 英克司兰中文名称品类信息型号信息说明书用户手册.pdf
- Easecurities易盛证券金融 证券5.3用户手册.pdf
- SLAMTEC用户手册S1用户手册.pdf
- Wanda Information Co., Ltd. 用户手册 说明书 三次修订稿 说明书用户手册.pdf
- Wanda Info. 说明书四次修订稿用户手册.pdf
- BOSCH CAN FD协议模块 CAN FD 说明书用户手册.pdf
最近下载
- 乐购Hymall连锁超市-收银员排班工具使用作业规范.pdf VIP
- 黑龙江省教育学会示范性高中专业委员会2025届高三下学期第一次模拟考试 语文 含答案.docx VIP
- ISPE第五部分试车与确认课件.pptx VIP
- 【2026年春新教材】部编版小学二年级下册道德与法治全册教案(教学设计).docx
- 数学北师大版八年级下册多边形的内角和教学设计.docx VIP
- 守正创新担使命,凝心聚力启新程——校长在2026年春季学期全体教师开学大会上的讲话.docx
- 《体育课程与教学论》全套PPT课件.pptx VIP
- 第一章税收初阶资料.ppt VIP
- 数据接口安全管理制度.docx VIP
- 道路车辆 电气及电子设备的环境条件和试验 第3部分:机械负荷.docx VIP
原创力文档

文档评论(0)