C# winform动态画条形统计图
数据表:
将数据查询出来后,放在一个DataTable(以下变量dt),查询代码省略
找到要画图的容器,在容器的Paint事件中写上代码:
private void TiaoXing_Paint(object sender, PaintEventArgs e){Pen pen = new Pen(Color.Blue, 2);Graphics TiaoXingTongJi = e.Graphics;Font myFont = new Font("宋体", 10);GraphicsPath myGP = new GraphicsPath();//创建一系类相连的线myGP.AddLine(34, 40, 40, 20);//添加线段(x1,y1.x2,y2)myGP.AddLine(40, 20, 46, 40);myGP.AddLine(40, 20, 40, 420);myGP.AddLine(40, 420, 480, 420);myGP.AddLine(480, 420, 460, 414);myGP.AddLine(480, 420, 460, 426);TiaoXingTongJi.DrawPath(pen, myGP);Brush myBrush = new SolidBrush(Color.Blue);for (int i = 0; i < 19; i++)//以10为一格画19格{TiaoXingTongJi.DrawString((i * 10).ToString(), myFont, myBrush, 12, 413 - (i * 20));TiaoXingTongJi.DrawString("-", myFont, myBrush, 39, 413 - (i * 20));}for (int i = 1; i < dt.Rows.Count + 1; i++){string ShuLiang = dt.Rows[i - 1]["数量"].ToString();int x = 20 * i * 3;//x轴int GaoDu = Convert.ToInt32(ShuLiang) * 2;//每个矩形的高int y = 420 - GaoDu;//要表名的数量y轴TiaoXingTongJi.DrawString(dt.Rows[i - 1]["物品名称"].ToString(), myFont, myBrush, x, 425);TiaoXingTongJi.FillRectangle(myBrush, x, y, 25, GaoDu);TiaoXingTongJi.DrawString(ShuLiang, myFont, myBrush, x, y - 20);}}
效果图:
C# winform动态画条形统计图相关推荐
- C# winform动态画扇形统计图
数据表: 将数据查询出来后,放在一个DataTable(以下变量dt),查询代码省略 找到要画图的容器,在容器的Paint事件中写上代码: private void ShangXing_Paint(o ...
- 转发:Ajax动态画EChart图表
本人由于项目需要,在状态变化的时候需要动态绘制对应数据的EChart图表,并且不刷新整个网页. 所以就用Ajax动态画EChart图表,下面是开发过程中遇到的一些坑的总结. 流程:页面首次加载时展示一 ...
- OpenGL进阶演示样例1——动态画线(虚线、实线、颜色、速度等)
用OpenGL动态绘制线段.事实上非常easy,但到如今为止.网上可參考资料并不多. 于是亲自己主动手写一个函数,方便动态绘制线段.代码例如以下: #include<GL/glut.h> ...
- 页面中动态画有超连接的图
最近有个项目,客户要求在客户端能动态显示不同年份数据,用折线图来表示,并且单击相关年份能查看详细数据,这里就有个问题放在面前,要从数据库里动态生成折线图,并且不只图,还能友好的操作. 分析了一下,可以 ...
- OpenGL进阶示例1——动态画线(虚线、实线、颜色、速度等)
用OpenGL动态绘制线段,其实很简单,但到现在为止,网上可参考资料并不多.于是亲自动手写一个函数,方便动态绘制线段.代码如下: #include<GL/glut.h> //OpenGL实 ...
- Canvas三种动态画圆实现方法说明
前言 canvas是HTML5出来的绘图API容器,对于图形的处理非常强大,下面使用canvas配合JavaScript来做一下动态画圆效果.可以用它来做圆形进度条来使用. 这里我个人总结了3种实现方 ...
- Android动态画线 坐标画线动画
效果图如下 根据相对于图片本身的坐标xy数组 基于view的左上角为原点 在图片上动态画线 //参考数据类型//pointList [PointEntity(pointX=1, pointY=1), ...
- Cesium:实现动态画多边形并测量面积
运行效果 知识点 相比于Cesium实现动态画点.线并测距代码原理是差不多的,我做了一些优化,动态添加标签,而不是在直接写在html中,感觉对性能有一定优化. 这个代码里我把求面积的注释了,因为没法直 ...
- html根据坐标画圆,Canvas三种动态画圆实现方法说明(小结)
前言 canvas是HTML5出来的绘图API容器,对于图形的处理非常强大,下面使用canvas配合JavaScript来做一下动态画圆效果.可以用它来做圆形进度条来使用. 这里我个人总结了3种实现方 ...
最新文章
- java实现上传_文件上传(java)
- Python zmq的三种简单模式
- dreamweaver 疑问
- 安徽信息技术初中会考上机考试模拟_中学信息技术上机操作考试技巧
- [转]LESS CSS 框架简介
- 算法设计与分析 矩阵连乘问题 动态规划
- CentOS 5.8 正式发布
- Eclipse设置Courier New字体
- 程序迭代时测试操作的要点(后端前端)
- SQL语句group by 与order by 执行顺序引发的一场“内斗”
- 安卓手机反应慢又卡怎么办_安卓手机出现卡顿反应慢的具体处理方法
- 如何在Internet Explorer 10中修改缓存行为
- CANTest及CANPro软件滤波设置说明
- proteus网络编号
- 衍生品定价一:远期与期货定价
- 信捷XD5程序+TG765触摸屏程序,功能为XY双轴排版机,带2个气缸
- VUE filters 使用
- Ph0ne1x-100 解题思考
- 第十七章 齐桓公失败之后梦初醒 管夷吾多管齐下修内政
- 杭州的海王星辰将健美生的保健品全部突然下架拉,有谁知道是什么