条形统计图,的高度,颜色的填充,实质上是把各个数据按照一定的数据处理方式,做成合适的矩形宽与高,在用颜色填充即可。

本次从C#入门到精通的摘取一个例子。代码略作适当的调整。

public void createImage() {
            int Tp1 = 13;
            int Tp2 = 1;
            int Tp3 = 2;
            int Tp4 = 1;
double tp1 = 13.0/ 27*100;
            double tp2 = 1.0 / 27*100;
            double tp3 = 2.0 / 27*100;
            double tp4 = 1.0 / 27*100;
int width = 300, height = 300;//声明宽与高
            Bitmap bitmap = new Bitmap(width, height);//创建一个绘图对象
Graphics g = Graphics.FromImage(bitmap);
try
            {
                g.Clear(Color.White);
                //创建6个brush,用于填充颜色
                Brush brush1 = new SolidBrush(Color.White);
                Brush brush2 = new SolidBrush(Color.Black);
                Brush brush3 = new SolidBrush(Color.Red);
                Brush brush4 = new SolidBrush(Color.Green);
                Brush brush5 = new SolidBrush(Color.Orange);
                Brush brush6 = new SolidBrush(Color.DarkBlue);
                //创建两个Font对象,用于设置字体
                Font font1 = new Font("Courier New", 16, FontStyle.Bold);
                Font font2 = new Font("Courier New", 8);
g.FillRectangle(brush1, 0, 0, width, height);//绘制背景图
                g.DrawString("投票结果", font1, brush2, new Point(90, 20));//绘制标题
Point p1 = new Point(70, 50);
                Point p2 = new Point(230, 50);
g.DrawLine(new Pen(Color.Black), p1, p2);//绘制一条直线
g.DrawString("用一生去下载你",font2,brush2,new Point(10,80));
                g.DrawString("一生所爱", font2, brush2, new Point(32, 110));
                g.DrawString("云也相逢", font2, brush2, new Point(32, 140));
                g.DrawString("情茧", font2, brush2, new Point(54, 170));
g.FillRectangle(brush3, 100, 80, (int)tp1, 17);//100,代表是横向,80代表是纵向,(int)tp1代表是矩形长,17代表是宽
                g.FillRectangle(brush4, 100, 110, (int)tp2, 17);
                g.FillRectangle(brush5, 100, 140, (int)tp3, 17);
                g.FillRectangle(brush6, 100, 170, (int)tp4, 17);

                g.DrawString("用一生去下载:13票", font2, brush2, new Point(25, 220));
                g.DrawString("一生所爱:1票", font2, brush2, new Point(155, 220));
                g.DrawString("云也相逢:1票", font2, brush2, new Point(25, 250));
                g.DrawString("情茧:1票", font2, brush2, new Point(155, 250));
                g.DrawRectangle(new Pen(Color.Green), 10, 210, 280, 80);
pictureBox1.Image = bitmap;

            }
            catch (Exception)
            {
               
                throw;
            }
       
        }

C# winform绘制条形统计图的例子相关推荐

  1. WinForm绘制带有升序、降序的柱形图

    WinForm绘制带有升序.降序的柱形图 private void HuiZhiTu( string strPaiXu){//初始数据int[] nums = { 150, 89, 200, 60, ...

  2. WinForm绘制直线、曲线、矩形、椭圆、圆弧

    WinForm绘制直线.曲线.矩形.椭圆.圆弧 新建一个窗体.添加六个按钮,插入下面的代码.得到上图. private void button1_Click(object sender, EventA ...

  3. WinForm绘制柱形图

    WinForm绘制柱形图 一.绘制简单的柱形图 private void button1_Click(object sender, EventArgs e){//创建画布Bitmap bitM = n ...

  4. 【H5】 echarts绘制条形统计图,饼状图

    [H5] echarts绘制条形统计图 表格需要引入echarts.js: https://echarts.baidu.com/dist/echarts.min.js 效果图如下: 引入结构: 实例化 ...

  5. Winform 三层架构小例子

    在web开发中常常用到工厂模式三层架构,现在也在Winform中应用这种架构方式,尝试了很多,也模仿了经典例子PetShop,但是还是不行,也参考了网上的一些例子.现在把我这个例子的整个制作过程简单的 ...

  6. 《 QT5.9 c++ 开发指南》各种常见图表的绘制(一个例子让你不再担心表图的绘制)

    本例子记录了QChart图的其他常见表格的绘制,方便实用,需要的同学可以下载下来,当作例子来看. 使用QChart一定要记得 在的你工程文件下加上: QT += charts 话不多说,我们先上例子效 ...

  7. D3D绘制2D图像例子

    2014/09/25 (转载自:http://blog.csdn.net/pizi0475/article/details/6268240) 原文出处: http://www.cppblog.com/ ...

  8. D3 - 绘制条形统计图

    D3绘制简单条形统计图 效果图: (图中箭头出表示鼠标位置,交互显示位置处的矩形) 完整代码: <body> <script src="https://d3js.org/d ...

  9. OpenGL:绘制太阳地球例子

    #include <GL/freeglut.h> //本来OpenGL程序一般还要包含<GL/gl.h>和<GL/glu.h> //但GLUT的头文件中已经自动将这 ...

最新文章

  1. cocos 2dx 一 核心类关系
  2. Spring框架你敢写精通,面试官就敢问@Autowired注解的实现原理
  3. java实现人脸识别V3版本开发
  4. iis php的mime映射_iis MIME 映射添加.php文件映射类型肿么定义
  5. netstat命令---Linux查看网络和socket信息
  6. 【原创】Proton在Android上的编译
  7. java速成书_java速成----一篇博文搞定基础
  8. outlook 您的组织策略阻止我们为您完成此操作 解决办法
  9. unbuntu 安装vscode
  10. Django建网站教程
  11. 九度1538:GrassLand密码
  12. 技术人如何打造个人品牌?
  13. java计算机毕业设计网上花店源码+系统+mysql数据库+LW文档+部署文件
  14. 字符串正则替换、点替换横杠
  15. windows上软件上传至linux上,《如何将windows上的软件包或文件上传到linux服务上》...
  16. 360qqq的背后是什么?
  17. 编译之 jack-server报错
  18. 常见安防存储估算标准
  19. 我六岁时开始使用计算机用英语怎么说,6岁就开始学习编程的她 对计算机技术有着强烈的兴趣 10岁之前,emma 10岁男童的朗诵诗搞 诗朗诵视频...
  20. 实验6-cp –r系统命令的实现--源路径(目录)中的所有文件和子目录,以及子目录中的所有内容,全部拷贝到目标路径(目录)中--操作系统实验

热门文章

  1. linux中用zip压缩文件,详解Linux中zip压缩和unzip解压缩命令及使用详解
  2. codeforces 957D Riverside Curio
  3. 华为手机如何升级鸿蒙系统_华为鸿蒙系统怎么升级?升级鸿蒙系统步骤[多图]...
  4. 开关问题 POJ - 1830 高斯消元
  5. ZT213LEEA.PDF_CSDN下载
  6. 处理器与安装内存显示不可用
  7. 带上紧箍咒,特斯拉辅助驾驶系统即将更新
  8. 决策树后剪枝算法(四)最小错误剪枝MEP
  9. 文科生学计算机有前途吗,文科生学计算机专业难吗
  10. 比较好的MySQL索引原理