2015-09-29 74 views
0

沒有人知道如何使用數據集內的不同數據表創建不同的圖表?假設我在數據集內有3個數據表,我想用1個圖表= 1個數據創建3個圖表。我嘗試不同的方法,但不能得到它的工作..如何使用數據表內的DataTable創建圖表

這是我迄今所做的對我的代碼:

Chart Chart2 = new Chart(); 
       Chart2.DataSource = ds; 
       Chart2.Width = 600; 
       Chart2.Height = 350; 

       Chart2.Series.Add(new Series()); 
       Chart2.Series[0].ChartType = SeriesChartType.BoxPlot; 
       foreach (DataTable dt in ds.Tables) 
       { 
        List<object> lst2 = dt.AsEnumerable().ToList<object>(); 

        foreach (DataRow row in dt.Rows) 
         Chart2.Series[0].Points.AddXY(row["DEPARTMENT"], new object[] { row["MAX"], row["MIN"], row["AVG"], row["PERCENTILE25"], row["PERCENTILE50"], row["PERCENTILE75"] }); 
       } 

       Chart2.Series[0].ChartType = SeriesChartType.BoxPlot; 

       //if (dt.Rows.Count > 0) 
       //{ 
       // string title2 = (tg2.Rows[0]["TITLE"].ToString()); 
       // Chart2.Titles.Add(title2); 
       //} 
       //create chartareas 
       ChartArea ca2 = new ChartArea(); 
       ca2.AxisX = new Axis(); 
       ca2.AxisY = new Axis(); 
       Chart2.ChartAreas.Add(ca2); 

       //databind 
       Chart2.DataBind(); 
       Chart2.Visible = true; 

       AjaxControlToolkit.TabPanel panel = new AjaxControlToolkit.TabPanel(); 
       panel.HeaderText += item.Text; 
       container.Tabs.Add(panel); 
       //panel.Controls.Add(tabContent); 
       panel.Controls.Add(Chart1); 
       panel.Controls.Add(Chart2); 

創建圖表後,我想將它們添加到標籤面板。

欣賞有人能爲我提供這方面的指導,讓我繼續。非常感謝!!

回答

0

而不是將整個DataSet設置爲Chart的數據源,您可以選擇單獨的DataTable,如下面的代碼所示。

Chart Chart2 = new Chart(); 
Chart2.DataSource = ds.Table[0]; //or ds.Table["TableName"] select appropriate DataTable 
Chart2.Width = 600; 
+0

嗨,但事情是我不知道數據集中有多少datatables。所以我想遍歷數據集中的每個數據表並創建圖表。你能建議我解決這個問題嗎?非常感謝您的回覆和幫助!顯然是 –

+0

。您必須知道您在圖表中顯示的內容。 –

相關問題