天天看點

基于Winform的Chart控件的簡單使用(Chart控件中的條形統計圖、折線統計圖、扇形統計圖的簡單使用)

Chart控件內建了頗多的統計圖模型,拿來即用的理念大大節省了開發的時間。下面示範最常見的三種統計圖模型的使用。

效果展示:

基于Winform的Chart控件的簡單使用(Chart控件中的條形統計圖、折線統計圖、扇形統計圖的簡單使用)

C#代碼:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Windows.Forms.DataVisualization.Charting;

namespace Chart控件的使用
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            ColumnAndLine();
            Pie();
        }
        private void ColumnAndLine() {
            //設定統計圖示題
            chart1.Titles.Add("條形統計圖和折現統計的使用");
            //設定XY軸上面的标簽
            chart1.ChartAreas[0].AxisX.Title = "月份(月)";
            chart1.ChartAreas[0].AxisY.Title = "數量(個)";
            //添加統計對象
            chart1.Series.Add("Column1");
            chart1.Series.Add("Line1");
            //設定統計對象的統計圖類型
            chart1.Series["Column1"].ChartType = SeriesChartType.Column;
            chart1.Series["Line1"].ChartType = SeriesChartType.Line;
            //設定統計對象顔色
            chart1.Series["Column1"].Color = Color.Blue;
            chart1.Series["Line1"].Color = Color.Red;
            //設定統計對象粗細,機關為pixel
            chart1.Series["Column1"].BorderWidth = 5;
            chart1.Series["Line1"].BorderWidth = 3;
            //設定XY軸上的值類型
            chart1.Series["Column1"].XValueType = ChartValueType.String;
            chart1.Series["Column1"].YValueType = ChartValueType.Int64;
            chart1.Series["Line1"].XValueType = ChartValueType.String;
            chart1.Series["Line1"].YValueType = ChartValueType.Int64;

            //準備資料
            String[] AllX = { "1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月" };
            int[] ColumnY = { 20, 40, 10, 50, 60, 80, 70, 90 };
            int[] LineY = { 90, 70, 80, 60, 50, 10, 40, 20 };
            //綁定資料
            chart1.Series["Column1"].Points.DataBindXY(AllX, ColumnY);
            chart1.Series["Line1"].Points.DataBindXY(AllX, LineY);
            //滑鼠移動到對應點顯示數值
            chart1.Series["Column1"].ToolTip = "#VALX:#VAL(個)";
            chart1.Series["Line1"].ToolTip = "#VALX:#VAL(個)";
        }

        private void Pie() {
            //标題
            chart2.Titles.Add("扇形統計圖的使用");
            chart2.Titles[0].ForeColor = Color.Black;
            chart2.Titles[0].Font = new Font("微軟雅黑", 16f, FontStyle.Regular);
            //設定統計對象的統計圖類型
            chart2.Series[0].ChartType = SeriesChartType.Pie;
            //準備資料
            String[] PieX = { "A", "B", "C", "D"};
            int[] PieY = { 20, 40, 30, 50 };
            //設定XY軸上的值類型
            chart2.Series[0].XValueType = ChartValueType.String;
            chart2.Series[0].YValueType = ChartValueType.Int64;
            //綁定資料
            chart2.Series[0].Points.DataBindXY(PieX, PieY);
            //滑鼠移動到對應點顯示數值
            chart2.Series[0].ToolTip = "#VAL";
        }

    }
}