C#實現繪制面形圖表的方法詳解
更新時間:2014年07月30日 14:57:49 投稿:shichen2014
這篇文章主要介紹了C#實現繪制面形圖表的方法,對于C#初學者很好的掌握C#圖形繪制有一定的借鑒價值,需要的朋友可以參考下
本例詳細講述了C#實現的面形圖繪制例子,這是其中一個核心繪制文件的代碼,代碼中的里面的注釋很多,也比較詳細,相信對于初學者學習及理解C#圖形繪制方面的技術要點、難點有所幫助。
C#繪制面形圖的主要功能代碼如下:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace 繪制面形圖 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } Graphics g;//創(chuàng)建Graphics對象 private void button1_Click(object sender, EventArgs e) { Bitmap bt = new Bitmap(panel1.Width, panel1.Height);//實例化一個Bitmap對象 int flag = (panel1.Width-4 )/ 6;//X軸的增值 g = Graphics.FromImage(bt);//實例化Graphics對象 Pen p = new Pen(Color.Black, 1);//設置Pen對象 g.DrawLine(p, new Point(0, 0), new Point(0, panel1.Height-20));//繪制Y軸 g.DrawLine(p, new Point(0, panel1.Height - 20), new Point(panel1.Width - 4, panel1.Height - 20));//繪制X軸 //聲明一個用于繪制顏色的數組 Color[] cl = new Color[] { Color.Red, Color.Blue, Color.YellowGreen, Color.Yellow, Color.RoyalBlue, Color.Violet, Color .Tomato}; int[] points = { 20,70,80,60,40,100,10};//聲明一個計算走勢峰值的數組 Point pt1 = new Point(0, panel1.Height - 20 - points[0]);//記錄繪制四邊形的第一個點 Point pt2 = new Point(0, panel1.Height - 20);//記錄繪制四邊形的第二個點 for (int i = 0; i <= 6; i++)//通過for循環(huán)繪制月份和面形圖 { PointF p1 = new PointF(flag * i, panel1.Height - 20);//計算每個月份數字的坐標 //繪制顯示月份的數字 g.DrawString(i.ToString(), new Font("宋體", 9), new SolidBrush(Color.Black), new PointF(p1.X - 2, p1.Y)); //記錄繪制四邊形的第三個點 Point pt3 = new Point(flag * i, panel1.Height - 20); //記錄繪制四邊形的第四個點 Point pt4 = new Point(flag * i, panel1.Height - 20 - points[i]); Point[] pt={pt1,pt2,pt3,pt4};//聲明一個Point數組 g.FillPolygon(new SolidBrush(cl[i]), pt);//填充四邊形的顏色 //當繼續(xù)繪制下一個四邊形時,前一個四邊形的最后兩個點作為下一個四邊形的起始點 pt1 = pt4; pt2 = pt3; } panel1.BackgroundImage = bt;//顯示繪制的面形圖 } private void Form1_Load(object sender, EventArgs e) { } } }
面形圖是平時很普及的一種圖表風格,用來顯示數據挺方便的。合理的加以應用相信會對程序數據展現的視覺效果有很大的提高!
您可能感興趣的文章:
- C#中使用DevExpress中的ChartControl實現極坐標圖的案例詳解
- DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實例
- DevExpress之ChartControl實現時間軸實例
- DevExpress之ChartControl的SeriesTemplate實例
- DevExpress之ChartControl實現柱狀圖演示實例
- DevExpress之ChartControl實現餅狀圖百分比演示實例
- DevExpress之ChartControl用法實例總結
- WinForm使用DecExpress控件中的ChartControl插件繪制圖表
相關文章
C#使用Twain協(xié)議實現掃描儀連續(xù)掃描功能
這篇文章主要介紹了C#使用Twain協(xié)議實現掃描儀連續(xù)掃描,只需一行代碼,就可實現一次掃描多張,且不需要更改掃描儀的任何設置,需要的朋友可以參考下2022-01-01C#編程實現統(tǒng)計文件夾內文件和隱藏文件的方法示例
這篇文章主要介紹了C#編程實現統(tǒng)計文件夾內文件和隱藏文件的方法,結合具體實例形式分析了C#針對文件與目錄的遍歷及屬性操作相關技巧,需要的朋友可以參考下2017-07-07