快速生成扇形图

快速生成扇形图只需修改数组budgetAll和actualAll

代码如下:


 1                //设置笔刷样式
2 SolidBrush[] sbrush =
3 {
4 new SolidBrush(Color.Wheat),//背景色
5 new SolidBrush(Color.Gold),//其它
6 new SolidBrush(Color.Red),//交通
7 new SolidBrush(Color.Green),//饮食
8 new SolidBrush(Color.Blue),//门票
9 new SolidBrush(Color.Brown)//住宿
10 };
11 Rectangle rect1 = new Rectangle(0, 0, 200, 200);
12 Rectangle rect2 = new Rectangle(10, 10, 180, 180);
13 Graphics g1 = panel1.CreateGraphics();//预算
14 Graphics g2 = panel2.CreateGraphics();//实际支出
15 g1.FillEllipse(sbrush[0], rect1);
16 g2.FillEllipse(sbrush[0], rect1);
17 g1.FillEllipse(sbrush[1], rect2);
18 g2.FillEllipse(sbrush[1], rect2);
19 string[] budgetAll = budget.Split(‘,‘);
20 string[] actualAll = actual.Split(‘,‘);
21 int sumBudget = 0;
22 int sumActual = 0;
23 for (int i = 0; i < budgetAll.Length; i++)
24 {
25 sumBudget +=Int32.Parse(budgetAll[i]);
26 sumActual += Int32.Parse(actualAll[i]);
27 }
28
29 int angleBud = 30;//预算起始角度
30 int angleAct=30;//实际起始角度
31 int tempBud, tempAct;
32 for (int i = 0; i < budgetAll.Length-1; i++)
33 {
34 tempBud=(int)(Int32.Parse(budgetAll[i]) * 360 / sumBudget);
35 tempAct=(int)(Int32.Parse(actualAll[i]) * 360 / sumActual);
36 g1.FillPie(sbrush[i + 2], rect2, angleBud, tempBud);
37 g2.FillPie(sbrush[i + 2], rect2, angleAct, tempAct);
38 angleBud += tempBud;
39 angleAct += tempAct;
40 }

效果图如下:

时间: 2024-10-16 11:45:25

快速生成扇形图的相关文章

.NET 使用 Highcharts生成扇形图 柱形图

1.首先新建一个.NET网站,如图所示: 2.引用所需要的js类库,如下图 highcharts.js可以在网上搜索就可以找到下载了. 3.在Default.aspx页面引用js 4.在 body 下添加一个<div id="container" style="width: 98%; height: 500px; margin: 0 auto"> , 前台代码如下 1 <script type="text/javascript"

快速生成折线图及代码详解

快速生成折线图时,只需要修改代码中的以下数据: 1.Y轴刻度个数:Ycounts 2.Y轴最小刻度数:YminValue 3.横坐标:数组mouth 4.标题:strTopic 5.用户数据:数组d 6.[可选]修改背景色:代码中27行改为所需要的颜色即可 完整代码: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using Sys

数据输入——生成你需要的echart图(堆积柱状图、扇形图、嵌套环形图)

最近论文需要一些比较直观的图表, 发现echart做出来的图还是比较美观的,这里介绍如何修改数据生成你需要的echart图. 1.堆积柱状图: http://echarts.baidu.com/examples/editor.html?c=bar-stack 以上的类型的颜色是自动分配的,stack属性可以将同一类型的数据放在一个矩形图中. 2.扇形图 http://echarts.baidu.com/examples/editor.html?c=pie-legend 1---->随机生成扇形图

如何快速生成视觉需求?

不少产品经理认为画视觉稿是视觉设计师的事情,所以偷懒也不整理视觉需求给到对方,最后验收发现缺少部分视觉稿,或者画出的视觉稿和PM要求的差异很大.介绍我自己研究出来的快速交付视觉需求的方法论,绝对值得学一学. 只有当PM将所有的视觉需求一一交付给视觉设计师,才能保证视觉设计师全面了解PM的设计思想,以及不会漏做相应的线框图. 一.需要交付的内容 刚入门的PM可能简单的把所有原型一股脑丢给视觉设计师,可能连当前版本还是所有版本都不区分.也不会区分线框图和交互图.视觉设计师只能自己琢磨,以及主动来问你

C# 绘制统计图(柱状图, 折线图, 扇形图)

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

Python中如何快速生成注释文档?

今天将告诉大家一个简单平时只要注意的python开发小细节,就可以轻松生成注释文档,也可以检查我们写的类方法引用名称是否重复有问题等.一看别人专业的大牛们写的文档多牛多羡慕,不用担心我们可以让python为我们生成基本满足的说明文档,一来可以提高代码整体阅读性,二来可以将代码的整体结构看着也更清晰,这样在交接的时候可以省很多麻烦,其它同事在接手你工作的时候也不会一行行去问你这是什么那是什么的,因为注释已经很直观的表述了,在整合的时候可当说明文档给客户简单说明(主要是给你BOSS看的),那么进入正

Google API快速生成QR二维码

Google API快速生成QR二维码 现在来说生成二维码最简单的方法是使用Google Chart API来实现,再次膜拜Google大神- Google Chart API是一套可以让你在线生成报表图的系统,通过URL你可以得到各种图表.举个例子:你在浏览器中输入 https://chart.googleapis.com/chart?cht=qr&chs=200×200&choe=UTF-8&chld=L|4&chl=http://Codeup.org 你将得到一个内容

eclipse下生成Java类图和时序图,生成UML图

最近老板让我做类图和时序图,提苦恼的,完全不会,就从网上整理了些 1.安装和使用AmaterasUML 安装AmaterasUML前,需要先安装GEF 采用eclipse在线安装方式安装就好. eclipse在线安装GEF的地址:http://download.eclipse.org/tools/gef/updates/releases/ 安装好GEF后,安装AmaterasUML 先到如下地址下载:http://sourceforge.jp/projects/amateras/download

ORM利器:NHibernate(二)使用CodeSmith快速生成映射文件和映射类

    在上一篇文章<ORM利器:NHibernate(一)简介>,我们对NHibernate做了简要介绍,接下来的系列文章将以Demo的形式和大家分享使用NHibernate的初步使用. 一 CodeSmith简介 本文以表自动生成NHibernate的映射文件和映射类的实例来说明一下本软件的使用方法.     CodeSmith是一种基于模板的代码生成工具,其使用类似于ASP.NET的语法来生成任意类型的代码和文件.使用 CodeSmith,可以生成包括简单的强类型集合和完整应用程序在内的