2013-11-21 51 views
0

我製作了一個圖表並在運行時添加了點。數據繪製爲 Chart1.ChartAreas(0).AxisX.IntervalType = DateTimeIntervalType.Weeks Chart1.Series("PH").Points.AddXY(DateTime.Parse(dr.Item("readtime")).ToString("MM-dd"), dr.Item("ph")) 繪製的數據包含7天的數據。如下所示,日期重複。 enter image description here如何操縱圖表的X軸

在這種情況下如何實現只顯示11-08,11-13,11-14的x軸?

下面是一個簡單的數據 enter image description here

+1

你可以發佈您的一些點? – Noctis

+0

看看這篇文章http://stackoverflow.com/questions/15426129/c-sharp-chart-change-max-and-min-values-on-the-x-axis – Carth

+0

編輯主要帖子來顯示示例數據 – user2552331

回答

0

當你從數據庫中獲取數據,這樣使用,

SELECT SUM(ph),SUM(tmp),SUM(orp),SUM(sal),SUM(ec),SUM(tds),SUM(do),readtime 
FROM <your tables> 
GROUP BY readtime 

從該查詢返回的結果集是你正在尋找的東西...

+0

感謝這是一個替代解決方案,但仍然不是一個理想的解決方案。我使用的SQL具有ORDER BY讀取時間,並且我不允許使用SUM函數,因此不允許使用GROUP BY子句 – user2552331

+0

然後將數據庫結果讀入數據表或列表並使用LINQ compute above aggregates並將它們綁定到圖表。您必須獲得聚合,因爲圖表逐行獲取x,y值。因此,爲了讓你指定三列,你只需要三行。 –

+0

感謝這給了我靈感,以另一種方式創建我的SQL,解決了我的問題。 – user2552331

0

您顯示的數據顯然是無效數據。

您幾乎有零個讀數發生在同一時間 - 午夜。

我懷疑這些甚至不是真正的讀數。

你需要排除他們(和你應該找出爲什麼發生這種情況? - 也許解析錯誤)