2013-07-10 27 views
1

我有一個4系列的圖表。每個系列都會在不同的時間添加,具體取決於應用功能的開啓/關閉。全系列對X軸:圖表,分享不同系列之間的X軸

DateTime.Now.ToString("mm:ss") 

,所以我想在任何時間序列數據是可用的,他們將在這個時候,在x軸發生添加到圖表。看起來不是那樣的。該圖表顯示一條藍線和一條紅線。藍線開始,然後幾秒鐘後,我檢查了checkBox2激活紅線,那發生在27:38(在藍線上你可以看到一個小滴)。我不明白爲什麼紅線從圖表的最左側開始,而不是在觸發時間(27:38)。

這是我的代碼:

 string reqTemp = textBox9.Text; 
     textBox2.Text = avTemp.ToString("F"); 
     this.chart1.Series["Actual Temperature"].Points.AddXY(DateTime.Now.ToString("mm:ss"), avTemp); 
     if (checkBox2.Checked == true) 
     { 
      this.chart1.Series["Requested Temperature"].Points.AddXY(DateTime.Now.ToString("mm:ss"), reqTemp); 
     } 

enter image description here

我怎麼會有系列的第一個已經運行開始他們打開了時間之後增加?基本上所有系列共享相同的x軸。

回答

0

全系列對X軸:

DateTime.Now.ToString("mm:ss") 

我看這是:你的所有的X值將作爲格式的字符串;這通常是一件壞事,因爲通過這樣做的X值已經全部變成0s,讀起來:無意義的

如果你想保留DateTime值,你需要添加DataPoints有效的X值!

所以,你應該將其添加爲AddXY(yourDateTimeXValue, yourYValue);,並設置Format

chart1.ChartAreas[0].AxisX.LabelStyle.Format = "mm:ss";