天天看點

使用Devexpress ChartControl中的Pie圖

       ChartControl 圖示控件有很多種類,以前使用過SwiftPlotDiagram類型 做過實時資料顯示,感覺非常好用。

一般的圖表顯示,要麼是那種折線,柱狀圖,餅圖等。來看看餅圖是怎麼使用的。 上圖先:

使用Devexpress ChartControl中的Pie圖

它也可以顯示成3D形式的,具體就不再說了。綁定到它的資料源的方式有很多種 List,Array,DataTable,Xml格式等。例子中使用的List

/// <summary>
    /// 集合類
    /// </summary>
    public class RecordList : System.Collections.CollectionBase
    {
        public RecordData this[int index]
        {
            get { return (RecordData)(List[index]); }
            set { List[index] = value; }
        }
        public int Add(RecordData contact)
        {
            return this.List.Add(contact);
        }
    }
    /// <summary>
    /// 資料類
    /// </summary>
    public class RecordData
    {
        public RecordData(string name, int id)
        {
            this._name = name;
            this._id = id;
        }
        public RecordData(string name)
        {
            this._name = name;
            Id++;
        }

        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        private int _id = 0;
        public int Id
        {
            get { return _id; }
            set
            {
                _id = value;
            }
        }

    }
           

綁定代碼:

RecordList list = new RecordList();
            list.Add(new RecordData("第一季度", 10));
            list.Add(new RecordData("第二季度", 20));
            list.Add(new RecordData("第三季度", 30));
            list.Add(new RecordData("第四季度", 40));
            
            ChartControl myChart = this.chartControl1;
            myChart.DataSource = list;

            Series mySeries = new Series("Series1", ViewType.Pie);  // 這是圖形類型
            myChart.Series.Add(mySeries);
            mySeries.ArgumentDataMember = "Name";   // 綁定參數
            mySeries.ValueDataMembers.AddRange(new string[] { "Count" });   // 綁定值
            mySeries.Label.PointOptions.PointView = PointView.ArgumentAndValues;   // 設定Label顯示方式
            //mySeries.ToolTipPointPattern = "hello world";   // 自定義ToolTip顯示
            mySeries.ToolTipEnabled = DevExpress.Utils.DefaultBoolean.True;  // 設定滑鼠懸浮顯示toolTip
            //mySeries.Label.PointOptions.ValueNumericOptions.Format = NumericFormat.FixedPoint;
            //mySeries.ValueScaleType = ScaleType.Numerical;
            //mySeries.Label.PointOptions.ValueNumericOptions.Precision = 2;
           

當然顯示資料的格式可以是數值,百分比等。