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();


        }
    }

  • 相关阅读:
    python学习日记——基本数据类型
    python学习日记——安装及初识
    STF平台探索
    fiddler基本操作梳理
    fly.js抛物线连续不断加入购物车
    判断是否存在某个字段hasOwnProperty
    vue中提示toFixed不是函数
    vue中父组件给子组件传值,子组件给父组件传值
    js判断用户的浏览器设备是移动端还是pc端
    css预处理器--sass学习($变量名)
  • 原文地址:https://www.cnblogs.com/top5/p/1676804.html
Copyright © 2011-2022 走看看