亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

自己寫的一個asp.net的生成曲線圖的過程

2019-11-18 16:51:52
字體:
來源:轉載
供稿:網友

這里是從Dataset里的數據生成曲線圖.
我的Dataset是從表Sendrec里讀取的數據,分別有Id,Sendid(訂單號),Sendtime(記錄時間),Sendnum(單位時間發送量/我這里是五分鐘)幾個字段

過程如下:
public void draw(Page page,DataSet ds,int Tnum){}
其中page是用來傳遞引用這個過程的頁面,這樣讓頁面是JPG方式直接向客戶端輸出生成的曲線圖.
ds就是取出來的數據集了
Tnum只是我這里要用到的一個參數,不想讓這個類去接觸讀取過程,所以把訂單的總量直接取出后傳遞給它的.
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Drawing;
using System.IO;


public class imgdraw
{
    public imgdraw()
    {
       
    }
    public void draw(Page page,DataSet ds,int Tnum)
    {
        //取得記錄數量
        int count = ds.Tables[0].Rows.Count;
        //記算圖表寬度
        int wd = 80 + 20 * (count - 1);
        //設置最小寬度為800
        if (wd < 800) wd = 800;
        //生成Bitmap對像
        Bitmap img=new Bitmap(wd,400);
        //生成繪圖對像
        Graphics g = Graphics.FromImage(img);
        //定義黑色畫筆
        Pen Bp = new Pen(Color.Black);
        //定義紅色畫筆
        Pen Rp = new Pen(Color.Red);
        //定義銀灰色畫筆
        Pen Sp = new Pen(Color.Silver);
        //定義大標題字體
        Font Bfont = new Font("Arial", 12, FontStyle.Bold);
        //定義一般字體
        Font font = new Font("Arial", 6);
        //定義大點的字體
        Font Tfont = new Font("Arial", 9);
        //繪制底色
        g.DrawRectangle(new Pen(Color.White, 400), 0, 0, img.Width, img.Height);
        //定義黑色過渡型筆刷
        LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, img.Width, img.Height), Color.Black, Color.Black, 1.2F, true);
        //定義藍色過渡型筆刷
        LinearGradientBrush Bluebrush = new LinearGradientBrush(new Rectangle(0, 0, img.Width, img.Height), Color.Blue, Color.Blue, 1.2F, true);
        //繪制大標題
        g.DrawString(ds.Tables[0].Rows[0]["sendid"].ToString() + "號訂單發送情況曲線圖", Bfont, brush, 40, 5);
        //取得當前發送量
        int nums=0;
        for (int i = 0; i < count; i++)
        {
            nums+=Convert.ToInt32(ds.Tables[0].Rows[i]["sendnum"]);
        }
        //繪制信息簡報
        string info="訂單發送時間:"+ds.Tables[0].Rows[0]["sendtime"].ToString()+"  曲線圖生成時間:"+DateTime.Now.ToString()+"  訂單總量:"+Tnum.ToString()+"  當前發送總量:"+nums.ToString();
        g.DrawString(info, Tfont, Bluebrush, 40, 25);
        //繪制圖片邊框
        g.DrawRectangle(Bp, 0, 0, img.Width - 1, img.Height - 1);

        //繪制豎坐標線      
        for (int i = 0; i < count; i++)
        {
            g.DrawLine(Sp, 40+20 * i, 60, 40+20 * i, 360);
        }
        //繪制時間軸坐標標簽
        for (int i = 0; i < count; i+=2)
        {
            string st = Convert.ToDateTime(ds.Tables[0].Rows[i]["sendtime"]).ToString("hh:mm");
            g.DrawString(st, font, brush, 30 + 20 * i, 370);
        }
        //繪制橫坐標線
        for (int i = 0; i < 10; i++)
        {
            g.DrawLine(Sp, 40, 60+30*i, 40+20*(count-1), 60+30*i);
            int s = 2500 - 50 * i * 5;
            //繪制發送量軸坐標標簽
            g.DrawString(s.ToString(), font, brush, 10, 60 + 30 * i);
        }
       
        //繪制豎坐標軸
        g.DrawLine(Bp, 40, 55, 40, 360);
        //繪制橫坐標軸
        g.DrawLine(Bp, 40, 360, 45 + 20 * (count - 1), 360);

        //定義曲線轉折點
        Point[] p = new Point[count];
        for (int i = 0; i < count; i++)
        {
            p[i].X = 40 + 20 * i;
            p[i].Y = 360- Convert.ToInt32(ds.Tables[0].Rows[i]["sendnum"]) / 5*3/5;
        }
        //繪制發送曲線
        g.DrawLines(Rp, p);

        for (int i = 0; i < count; i++)
        {
            //繪制發送記錄點的發送量
            g.DrawString(ds.Tables[0].Rows[i]["sendnum"].ToString(), font, Bluebrush, p[i].X, p[i].Y - 10);
            //繪制發送記錄點
            g.DrawRectangle(Rp, p[i].X - 1, p[i].Y - 1, 2, 2);
        }
        //繪制豎坐標標題
        g.DrawString("發送量", Tfont, brush, 5, 40);
        //繪制橫坐標標題
        g.DrawString("發送時間", Tfont, brush, 40, 385);


        //保存繪制的圖片
        MemoryStream stream = new MemoryStream();
        img.Save(stream, ImageFormat.Jpeg);
        //圖片輸出
        page.Response.Clear();
        page.Response.ContentType = "image/jpeg";
        page.Response.BinaryWrite(stream.ToArray());

    }
}
嘿嘿!發表這個,就是一個圖片的繪制方法的記錄了.這里面還有很多不當之久,望指教.
http://www.49028c.com/aowind/archive/2006/11/23/569536.html


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
色综合久久88色综合天天看泰| 中文字幕亚洲字幕| 亚洲精品免费一区二区三区| 日韩欧美精品中文字幕| 亚洲精品综合久久中文字幕| 高清视频欧美一级| 日韩成人在线播放| 68精品国产免费久久久久久婷婷| 国产综合在线视频| 日韩中文字幕在线免费观看| 亚洲永久免费观看| 国产91色在线播放| 久久久国产精品免费| 精品国产一区二区在线| 亚洲欧洲一区二区三区久久| 亚洲精品免费在线视频| 欧美成人亚洲成人日韩成人| 色综合久综合久久综合久鬼88| 欧美大全免费观看电视剧大泉洋| 亚洲奶大毛多的老太婆| 国产精品一区二区三区久久久| 久久精品国产亚洲7777| 91av在线播放视频| 97不卡在线视频| 日韩亚洲国产中文字幕| 国产精品丝袜高跟| 国语自产精品视频在线看抢先版图片| 在线视频免费一区二区| 国产精品偷伦免费视频观看的| 91久久国产精品| 伊人激情综合网| 第一福利永久视频精品| 国产午夜精品一区理论片飘花| 亚洲视频在线观看| 欧美成人午夜剧场免费观看| 日韩av三级在线观看| 亚洲色图在线观看| 亚洲欧美国内爽妇网| 亚洲第一网中文字幕| 国产精品www色诱视频| 91亚洲精品在线观看| 欧美怡红院视频一区二区三区| 亚洲成人aaa| 亚洲二区在线播放视频| 久久精品视频播放| 久久久久久久久久婷婷| 日韩精品视频在线播放| 亚洲人成网站777色婷婷| 亚洲二区在线播放视频| 亚洲视频专区在线| 日韩欧美在线视频免费观看| 国产精品xxxxx| 日韩在线欧美在线国产在线| 成人免费看黄网站| 欧美电影《睫毛膏》| 久久精品91久久香蕉加勒比| 欧美日韩激情小视频| 国产精品久久91| 国产精品成熟老女人| 欧美极品少妇xxxxⅹ裸体艺术| 亚洲激情视频在线播放| 日韩电影大片中文字幕| 狠狠久久亚洲欧美专区| 国产成人自拍视频在线观看| 国产精品1区2区在线观看| 性色av一区二区三区| 久久综合88中文色鬼| 亚洲福利视频久久| 日本a级片电影一区二区| 日韩av第一页| 国产欧美日韩精品在线观看| 亚洲三级黄色在线观看| 国产精品爽爽爽| 日韩激情片免费| 97国产suv精品一区二区62| 久久久999精品视频| 国产精品福利在线| 69av在线播放| 亚洲免费精彩视频| 美女999久久久精品视频| 欧美日韩亚洲系列| 国产精品人成电影| 欧美色视频日本高清在线观看| 9.1国产丝袜在线观看| 成人国产精品av| 视频一区视频二区国产精品| 欧美激情国产精品| 久久视频在线看| 国产精品久久在线观看| 高清一区二区三区日本久| 国产日韩欧美日韩大片| 久久亚洲精品国产亚洲老地址| 日韩av理论片| 日韩在线视频一区| 亚洲深夜福利在线| 国产成人一区二区在线| 国产精品精品视频一区二区三区| 久久香蕉频线观| 国产精品美女主播| 精品网站999www| 午夜精品久久久久久久白皮肤| 欧美激情在线有限公司| 久久成人在线视频| 久久精品国产亚洲7777| 一区二区欧美日韩视频| 欧洲亚洲免费在线| 欧美大尺度电影在线观看| 91手机视频在线观看| 日韩精品在线第一页| 久久久久久噜噜噜久久久精品| 欧美怡春院一区二区三区| 亚洲精品成人av| 色www亚洲国产张柏芝| 欧美一级片在线播放| 亚洲国产精品久久久久久| 成人日韩在线电影| 亚洲字幕一区二区| 亚洲精品电影在线观看| 日韩欧美主播在线| 久久国产精品影视| 久久精品亚洲热| 日韩激情av在线免费观看| 国产精品久久激情| 5566日本婷婷色中文字幕97| 欧美日韩一区二区在线播放| 国产丝袜一区视频在线观看| 一本一本久久a久久精品综合小说| 一本色道久久综合狠狠躁篇怎么玩| 国产一区二区黑人欧美xxxx| 日韩一区二区三区在线播放| 亚洲欧美日韩精品久久奇米色影视| 成人做爰www免费看视频网站| 国产精品女主播视频| 亚洲va欧美va在线观看| 2019亚洲男人天堂| 中文字幕日韩欧美精品在线观看| 91色视频在线观看| 日韩中文字幕视频在线观看| 成人h视频在线| 精品在线欧美视频| 精品亚洲永久免费精品| 91产国在线观看动作片喷水| 国产婷婷97碰碰久久人人蜜臀| 国产女人精品视频| 最近中文字幕2019免费| 久久久国产一区二区三区| 91国内精品久久| 91久久久久久久久久久| 欧美精品videosex性欧美| 久久精品男人天堂| 欧美日韩国产成人在线| 热久久视久久精品18亚洲精品| 岛国av一区二区在线在线观看| 国产精品久久久久久久久久| 欧美精品久久一区二区| 成人免费激情视频| 欧美日韩成人在线观看| 亚洲精品在线观看www| 国产成+人+综合+亚洲欧美丁香花| 日本电影亚洲天堂| 91国内精品久久| 欧美中文字幕视频在线观看| 九九久久久久99精品| 久久91精品国产91久久久|