在圖表中,x軸表明類別,y軸表明數值(比如類與他們的屬性)數據庫
這是數據庫中的數據,下面咱們選前5輛車,在圖表中顯示他們的名字,油耗,功率,價格編程
建立查詢數據的類工具
class CarDA { public List < CarData> select() { List < CarData > list= null; SqlConnection conn = new SqlConnection("server=.;database=mydb;user=sa;pwd=123"); conn.Open(); SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "select top 5* from car"; SqlDataReader dr= cmd.ExecuteReader() ; if(dr.HasRows) { list = new List<CarData>(); while(dr.Read()) { CarData data = new CarData(); data = new CarData(); data.Name = dr["name"].ToString(); data.Oil=(decimal)dr["oil"]; data.Powers=dr["powers"].ToString(); data.Price=(decimal )dr["price"]; list.Add(data); } } return list; cmd.Dispose(); conn.Close(); } }
class CarData { private string _name; public string Name { get { return _name; } set { _name = value; } } private decimal _oil; public decimal Oil { get { return _oil; } set { _oil = value; } } private string _powers; public string Powers { get { return _powers; } set { _powers = value; } } private decimal _price; public decimal Price { get { return _price; } set { _price = value; } } }
窗體一加載,給圖表綁定數據源,注意:綁定時以一列爲單位,指明每列的x軸和y軸分別對應數據源的屬性名(也就是泛型集合裏面對象的屬性名)。注意:指定的必須是屬性名,不能是字段名,這也要求數據源的對象的字段必須封裝,必須有屬性。spa
這裏體現了C#編程的封裝特性,咱們給chart圖表工具一個數據源,讓它幫咱們形象的展現數據,咱們並不關心究竟是怎樣實現的,咱們只告訴它須要顯示那些數據,剩下的就交給chart圖表工具了。code
private void Form1_Load(object sender, EventArgs e) { List<CarData> list = new CarDA().select(); if (list != null) { chart1.DataSource = list; chart1.Series["Series1"].XValueMember="name"; chart1.Series["Series1"].YValueMembers = "oil"; } }
在Series屬性裏,能夠設置每列的顯示名字,並添加新列orm
private void Form1_Load(object sender, EventArgs e) { List<CarData> list = new CarDA().select(); if (list != null) { chart1.DataSource = list; chart1.Series["油耗"].XValueMember="name"; chart1.Series["油耗"].YValueMembers = "oil"; chart1.Series["功率"].XValueMember = "name"; chart1.Series["功率"].YValueMembers = "powers"; chart1.Series["價格"].XValueMember = "name"; chart1.Series["價格"].YValueMembers = "price"; } }