zoukankan      html  css  js  c++  java
  • Asp.NET生成饼状图

    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;

    public partial class Admin_Drawing_Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            
            Response.ContentType = "image/jpeg";
            const int width = 180, height = 150;
            int x = 30, y = 50;

            int pieWidth = 120, pieHeight = 50, pieShadow = 20;
            int[] arrVote = { 100, 50, 100,60,50};
            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);        
            objGraphics.Dispose();
            objBitmap.Dispose();


        }
    }

  • 相关阅读:
    HAOI2018 简要题解
    HAOI2017 简要题解
    BZOJ 5477: 星际穿越
    HAOI2016 简要题解
    C#oracle还原imp实例
    oracle备份imp命令大全
    C#oracle备份和还原
    win10安装CAD后出现致命错误
    Oracle 恢复数据后,数据库中中文变成问号解决方法
    CAD 安装时出现.net frameword 3.5安装不上的问题
  • 原文地址:https://www.cnblogs.com/top5/p/1676804.html
Copyright © 2011-2022 走看看