统计图是信息管理系统常用的功能,常用的有饼图、柱形图、拆线图等。饼图用来表示各部分比例,柱形图用来表示各部分的比较,拆线图用来表示发展趋势,另外还有其他一些具有特殊功能的图示。本小节将以二维饼图为例说明通过.NET GDI+来绘制统计图的原理。
用户可以使用FillPie来绘制饼块,多个饼块拼接在一起就形成了圆饼效果。其基本算法就是每个部分角度的计算,在总共360°的条件下,每个部分会占多少度。为了方便起见,本例的数据源采用数组,在实例应用过程中,数组数据可以来自数据库,具体代码如下:
int[] data = { 100, 200, 300, 460 };
Color[] colors = { Color.Green, Color.Blue, Color.Tomato, Color.Yellow };
//创建画布
Bitmap bm = new Bitmap(400, 400);
//绘图区
Graphics g = Graphics.FromImage(bm);
//清理绘图区填充为白色
g.Clear(Color.Black);
//在图片区写字
g.DrawString("饼图测试", new Font("宋体", 16), Brushes.Red, new PointF(5, 5));
float total = 0;
foreach (int i in data)
{
total += i;
}
float sweetAngle = 0;
float startAngle = 0;
int index = 0;
float x = 50f;
float y = 50f;
int width = 200;
foreach (int i in data)
{
sweetAngle = i / total * 360;
g.FillPie(new SolidBrush(colors[index]), x, y, width, width, startAngle, sweetAngle);
g.DrawPie(Pens.Indigo, x, y, width, width, startAngle, sweetAngle);
index++;
startAngle += sweetAngle;
}
bm.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
g.Dispose();
分享到:
相关推荐
这个“VB.NET绘图示例”很可能是为了展示如何利用VB.NET的Graphics类来实现基本和高级的绘图操作。VB.NET 2010是.NET Framework 4.0的一部分,所以这个示例应该兼容该版本的编程环境。 首先,让我们深入了解VB.NET...
在本项目中,我们关注的是一个使用C++与.NET框架结合编写的绘图程序。C++是一种静态类型的、编译式的、通用的、大小写敏感的、不仅支持面向过程编程,也支持面向对象编程的程序设计语言。而.NET框架则是微软提供的一...
在VB.NET中创建一个自定义绘图板是一个有趣且实用的编程挑战,它涉及到图形用户界面(GUI)设计、事件处理、图形绘制等多个知识点。在这个项目中,我们将深入探讨如何利用VB.NET的Windows Forms库来构建一个功能完备...
这套".NET绘图全套PPT"显然是一个关于.NET图形编程的教程集合,可能包含了从基础到进阶的各种主题。 1. **GDI+**:在.NET中,图形设备接口(GDI+)是一个核心组件,用于进行2D图形绘制。GDI+提供了丰富的API,如`...
在.NET框架中,C#语言提供了丰富的功能,其中包括强大的绘图功能,这使得开发者能够创建出自定义的UI控件,...通过学习和研究这个示例,你将能更好地理解.NET绘图技术,并有可能创造出更多具有吸引力的自定义UI控件。
VB.NET绘图工具的核心在于System.Drawing命名空间,该命名空间包含了进行图形绘制所需的各种类。 1. **Graphics类**:这是VB.NET绘图的基础,它代表一个可以进行绘制的表面,如窗口、图像或打印机。通过Form或...
### ASP.NET绘图(GDI) #### 知识点概览 本文主要介绍如何使用ASP.NET结合GDI+技术来实现在图片上添加文字或图片水印的功能。具体包括以下几个方面的知识点: 1. **理解GDI+在ASP.NET中的应用**。 2. **创建和...
ASP.NET 操作 ECharts 是一个将后端数据与前端可视化图表结合的过程,主要涉及 ASP.NET、C# 和 ECharts 三部分技术。ECharts 是百度推出的一款轻量级的 JavaScript 图表库,提供了丰富的图表类型,如折线图、柱状图...
在ASP.NET中,图片操作是一项常见的任务,涉及对图像的各种处理,如调整尺寸、转换颜色模式、添加水印等。本文将深入探讨其中的关键技术,包括`Bitmap`、`Image`和`Graphics`类,这些都是.NET Framework的`System....
`绘图.sln`文件可能是一个VB.NET解决方案,包含了该项目的所有文件和设置。打开它,你可以看到项目的结构和代码实现。`vb绘图.doc`可能是一份文档,详细解释了代码的工作原理或提供了更深入的绘图技巧。 总之,VB...
本文将深入探讨几种常见的.NET绘图方式及其运行效率,旨在为程序员提供决策依据。 首先,我们来看看标题提及的".Net环境下各种绘图方式"。在.NET Framework中,主要的绘图工具是System.Drawing命名空间下的类,如...
首先,我们需要了解的是Windows API,这是Windows操作系统提供的底层接口,开发者可以通过它来执行一些无法直接通过.NET Framework完成的任务,比如桌面绘图。在VB.NET中,我们可以使用P/Invoke(平台调用)来调用...
本教程"dotNET入门经典教程:七天学会用.NET绘图"旨在帮助初学者在短短一周内掌握.NET平台上的图形编程技术。下面,我们将深入探讨这个教程可能涵盖的关键知识点。 第一天:基础概念与环境搭建 首先,教程会介绍...
由于建筑测绘工作的特殊性,往往需要处理大量数据,而手工操作绘图及数据内业处理不仅耗时且劳动强度大。CAD二次开发支持.NET后,可利用***开发自动化应用,以自动化的方式处理和绘制图形,从而提高效率并减轻工作...
综上所述,这个基于C#.NET的小型画图软件是一个使用.NET Framework开发的桌面应用,它的核心功能包括基本的绘图操作和图形的实时重绘。通过分析提供的文件结构,我们可以了解到项目的基本组织方式和开发环境。对于...
首先,GDI+是VB.NET中用于图形操作的核心组件,它位于System.Drawing命名空间内。GDI+ 包含了多个类,如Graphics、Pen、Brush、Font和Icon,这些类分别负责不同的图形处理任务: 1. Graphics类:是绘图的基础,提供...
9. **图形渲染优化**:对于性能敏感的应用,了解如何优化绘图操作,减少不必要的重绘,可以提高用户体验。 通过深入学习和实践这个CAD绘图小程序,开发者不仅可以掌握VB.NET的基础,还能了解到如何在.NET环境下实现...
10. **绘图和打印**:你可以控制AutoCAD进行精确的绘图操作,并设置打印参数,实现自动化的图纸输出。 11. **错误处理和调试**:理解如何有效地处理错误和异常,以及如何使用Visual Studio等工具进行调试,对于开发...
在.NET框架中,C#语言提供了丰富的功能来处理打印操作,包括打印文本、图像以及其他文档。本实例将探讨如何利用C#实现图片打印的源码,帮助开发者掌握.NET中的图形打印技术。 首先,我们需要了解.NET Framework中的...