2016-12-15 69 views
1

我正在使用從DataTable創建的asp.net中的圖表。基本上,我有一個數據表是這樣的:ASP.NET圖表 - Y值不從0開始

enter image description here

所以,我想在我的圖表是每個differente位置一列,併爲每個diferent型我想有一個的「部分」列,這意味着我希望每個地點都有一個專欄。

我已成功地做這樣的事情,但並不完全,我想什麼:

enter image description here

現在,我會盡力解釋我的代碼。

首先,我在數據表後,對每個不同的位置,我選擇了行添加不同的地點串

string loc = ""; 
for (int i = 0; i < dtTipos.Rows.Count; i++) 
{ 
    if (loc != dtTipos.Rows[i]["Location"].ToString()) 
     listaLocais.Add(dtTipos.Rows[i]["Location"].ToString()); 

    loc = dtTipos.Rows[i]["Location"].ToString(); 
} 

的列表中相應的位置,並創造了一系列針對他們每個人。我繼續創建與Y = 0和一個一個點與Y =總

for (int i = 0; i < listaLocais.Count; i++) 
{ 
    DataRow[] lRow = dtTipos.Select("Location = '" + listaLocais[i] + "'"); 
    foreach (DataRow dr in lRow) 
    { 
     string serie = dr["Location"].ToString().Substring(0, 2) + "_" + dr["Type"].ToString() + " - " + dr["Total"].ToString(); 
     Series s = new Series(); 
     s.Name = serie; 
     s.Label = dr["Location"].ToString(); 
     s.ChartType = SeriesChartType.StackedColumn; 
     chartTipo1.Series.Add(s); 

     s.Points.AddXY(i + 1, 0); 
     s.Points[0].Label = " "; 
     s.Points.AddXY(i + 1,Convert.ToInt32(dr["Total"].ToString())); 
     s.Points[1].Label = " ";// dtTipos.Rows[i]["Total"].ToString(); 
    } 
} 

的事情是:我想是因爲我創造的每一行系列,每次我用diferent列,y軸開始從我離開的地方。

有沒有什麼辦法可以讓這個工作? 我會感謝任何幫助。

回答

1

您將在同一個循環中添加您的系列和數據點。首先添加您的系列,那麼你的數據點:

public partial class WebForm1 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     DataTable dt = new MyDataTable(); 

     //first add your series 
     foreach (DataRow row in dt.DefaultView.ToTable(true, new string[] { "Type" }).Rows) 
     { 
      Series series = new Series(); 
      series.Name = (string)row["Type"]; 
      series.ChartType = SeriesChartType.StackedColumn; 
      Chart1.Series.Add(series); 
     } 

     // then add your points; 
     foreach (DataRow row in dt.Rows) 
      Chart1.Series[(string)row["Type"]].Points.AddXY(row["Location"], new object[] { row["Total"] }); 
    } 
} 

enter image description here

+0

我不能相信這是這麼簡單。但是,現在又遇到了另一個問題。並非所有地點都出現在圖表中(我有6個地點,但只有4個出現)。這是否由於在遺漏位置重複某些類型而引起的? –

+0

爲了給你一個明確的答案,你必須發佈[MCVE](http://stackoverflow.com/help/mcve),以便人們可以重現你的具體問題。如果我的帖子解決了您當前的問題,請記住將其標記爲已接受,然後發佈新問題與您的新問題,但請確保您知道如何按照上面的鏈接中所述提出正確的問題。 – jsanalytics

+0

我很難將信息放在正確的列中,它不斷混淆 - 錯誤的值將會出現在錯誤的位置。 我應該爲此提出另一個問題或編輯此問題? –