topn3dpie.aspx
------------------
<%@ Page language="c#" CodeBehind="topn3dpie.aspx.cs" AutoEventWireup="false" Inherits="Yeefly.topn3dpie" %>
topn3dpie.aspx.cs
-----------------
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;
using System.IO;
namespace Yeefly
{
/// <summary>
/// Graph 的摘要说明。
/// </summary>
public class topn3dpie : System.Web.UI.Page
{
private void Page_Load(object sender, System.EventArgs e)
{
Response.ContentType = "image/jpeg";
const int width = 300, height = 300;
int x = 30, y = 50;
int pieWidth = 120, pieHeight = 40, pieShadow = 15;
int[] arrVote = {70,90,80,20,60,40};
Random oRan = new Random();
Bitmap objBitmap = new Bitmap(width, height);
Graphics objGraphics = Graphics.FromImage(objBitmap);
objGraphics.DrawRectangle(new Pen(Color.Black),0,0,width,height);
objGraphics.FillRectangle(new SolidBrush(Color.White), 1, 1,width - 2, height - 2);
SolidBrush objBrush = new SolidBrush(Color.Blue);
objGraphics.SmoothingMode = SmoothingMode.AntiAlias;
int iCurrentPos = 0;
Color[] arrColor = {Color.Red,Color.Red,Color.Red,Color.Red,Color.Red,Color.Red};
for(int i = arrVote.Length - 1 ; i >= 0; i--)
{
arrColor[i] = Color.FromArgb(oRan.Next(255), oRan.Next(255), oRan.Next(255));
}
for(int i = arrVote.Length - 1 ; i >= 0; i--)
{
objBrush.Color = arrColor[i];
for(int iLoop2 = 0; iLoop2 < pieShadow; iLoop2++)
objGraphics.FillPie(new
HatchBrush(HatchStyle.Percent50,objBrush.Color),x, y + iLoop2, pieWidth,
pieHeight, iCurrentPos, arrVote[i]);
iCurrentPos += arrVote[i];
}
iCurrentPos = 0;
for(int i = arrVote.Length - 1 ; i >= 0;i--)
{
objBrush.Color = arrColor[i];
objGraphics.FillPie(objBrush,x, y, pieWidth, pieHeight, iCurrentPos, arrVote[i]);
iCurrentPos += arrVote[i];
}
objBitmap.Save(Response.OutputStream, ImageFormat.Jpeg);
// clean up...
objGraphics.Dispose();
objBitmap.Dispose();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
分享到:
相关推荐
接下来,我们探讨如何用GDI+来实现3D效果的饼图: 1. 初始化绘图环境:首先,你需要创建一个`Graphics`对象,它是GDI+的核心,用于执行所有的绘图操作。通常,你可以从窗体、控件或者其他支持绘图的表面获取这个...
本项目“GDI+绘制3D饼状图”聚焦于利用Windows图形设备接口(GDI+)创建具有自定义功能的3D饼图,包括设置饼图大小、输出位置等。以下将详细解析这个项目的知识点。 1. **GDI+基础**: GDI+是Windows平台上的一种...
C# GDI+ 水晶3D饼图源码,C#2005做的,下了运行一下看看效果再看看源码,很不错的。用来学习C# GDI+编程是很不错的实例
VB.net实现的曲线图、饼图源码,VB.net实现的曲线图、饼图源码.
如果要设计.NET Framework图形应用程序,就必须使用GDI+。本书是一本为.NET开发人员讲授如何编写Windows和Web图形应用程序的专著,书中全面介绍了GDI+和Windows图形程序设计的基本知识和GDI+图形程序设计的各个方面...
在本示例中,“GDI+绘制图表的应用.rar”是一个压缩包,包含了使用GDI+进行图表绘制的相关资料,特别适用于Web网页的展示,如柱状图和饼图等常见数据可视化类型。 首先,我们来深入理解GDI+在绘制图表中的核心概念...
在Asp.NET中,WebChart控件是一种强大的工具,用于创建动态、交互式的图表,包括直方图和饼图。本实例将详细讲解如何利用WebChart控件在VS2005开发环境下实现这两种常见的数据可视化图形。 首先,我们要了解Web...
12.1 创建第一个ASP.NET Web应用程序 12.2 第一个图形Web应用程序 12.3 绘制简单的图形 12.4 在Web上绘制图像 12.5 绘制曲线图 12.6 绘制饼图 总结 第13章 GDI+ 的最佳实践及性能技术 13.1 理解渲染过程 ...
在ASP.NET中,你可以利用GDI+来直接绘制图表,这需要编写较多的代码来实现各种图表元素,如线条、柱状、饼图等。优点是具有高度的灵活性和自定义性,可以精确地控制图表的每一个细节。但缺点是代码量大,且需要对...
在ASP.NET中实现3D饼图,开发者通常会使用图形库或插件,比如jQuery的Chart.js、Highcharts,或者微软自家的ASP.NET AJAX Chart控件。这些库提供了丰富的API和配置选项,可以定制图表的颜色、标签、动画效果等。在本...
本篇将详细介绍如何在ASP.NET环境下利用不同的库和技术来绘制饼图与棒图。 首先,饼图是一种常用的数据展示方式,它通过扇形的大小来表示各部分占整体的比例。在ASP.NET中,我们可以使用多种库来创建饼图,例如: ...
在C# 2005环境中,可以使用ADO.NET与SQL Server 2005进行数据交互,获取需要绘制的数值。通过建立数据库连接,执行SQL查询,将结果集转换为可以用于绘图的数据结构,如数组或列表。这一步骤是数据驱动绘图的关键。 ...
虽然具体使用哪种数据库没有在标题和描述中明确指出,但通常ASP.NET项目会结合SQL Server、MySQL或Oracle等关系型数据库进行数据操作。三层架构中的一层便是数据访问层,负责与数据库进行交互,实现CRUD(创建、读取...
要绘制3D饼图,我们主要依赖`System.Windows.Media.Media3D`命名空间中的类。 1. **创建3D场景**:在WPF中,所有3D元素都包含在一个`Viewport3D`对象中。首先,我们需要在XAML布局文件中添加一个`Viewport3D`控件,...
Fusion Charts Helper Class for ASP.NET 2.0 (C#)很可能是一个专门为此目的编写的辅助类库,它简化了与Fusion Charts API的交互,帮助开发者快速生成各种图表,如柱状图、饼图、线图等。 在这个源码中,开发者可能...
本篇文章将详细探讨如何在ASP.NET环境中利用各种工具和技术来绘制饼图和柱状图。 首先,饼图是一种用于显示数据比例的图形,每个扇区代表一个类别,其大小表示该类别在整个数据集中的占比。在ASP.NET中,我们可以...
通过threejs实现的3D饼图图表,数据可视化的高度应用场景中2D图表居多,3D相关的数据可视化比较少,不知收费贵而且资源少之又少,在项目中需要使用时对于初步接触的开发的人员很不友好,希望大家通过本案例可以快速...
在使用这个3D饼图资源时,你需要有一定的ActionScript(Flash编程语言)基础,以便理解和修改源码。同时,熟悉Flash开发环境,如Flash Professional或FlashDevelop,可以帮助你更好地调试和预览效果。如果你不熟悉...
"使用HighCharts绘制3D饼图在Vue中的实现方法" 在Vue中使用HighCharts绘制3D饼图是一种常见的数据可视化方式。HighCharts是一款基于JavaScript的图表库,具有强大的数据可视化功能。下面是使用HighCharts绘制3D饼图...