2014-03-31 443 views
0

我正在創建一個給定一些數據文件的程序,根據這些文件創建圖表。我沒有創建多個圖表,而是選擇在循環中創建多個圖表區域,並將各種數據添加到圖表區域。當使用一些小的樣本數據時,程序會在圖表中創建3個圖表區域,並且工作正常。動態創建多個圖表區域

但是使用更大的數據,該程序會創建圖表區域,但因爲有超過10個圖表區域創建,他們不適合進入圖表的大小,也被垂直對齊而不是水平。

我想要做的是增加適合大數據的所有圖表區域的圖表大小,垂直對齊所有圖表區域並允許用戶通過滾動條查看所有圖表區域,因爲那裏將使用真實數據文件的很多圖表區域,任何幫助將不勝感激。下面

+0

看看http://linq2charts.codeplex.com動態創建圖表是很棒的。 – Larry

回答

0

的是對準類型的示例可以切換到

Chart1.ChartAreas(0).AlignmentOrientation = AreaAlignmentOrientations.Horizontal 
Chart1.ChartAreas(0).AlignmentOrientation = AreaAlignmentOrientations.Vertical 

作爲用於滾動條,圖表控制不支持滾動條。我會做的是我的原始圖表包含在某種面板/標籤[任何支持滾動條的容器]然後是所需的圖表數量達到一定的水平添加另一個圖表下面的原始,然後允許容器建立滾動條

'when charts required is now 5 create new chart 
If Chart1.ChartAreas.Count =4 Then 
     Dim OverflowChart As New Chart 
     'add a new chart below your current chart and let the container 
     'have the scroll bar and not your chart control 

End if 
0

我在這裏發佈了這個很諷刺的設計,爲了將來任何有類似問題的人。我做的方式是: - 將滾動條添加到表格 - 使空白圖儘可能大以適應將要使用的任何數據 - 使用ChartArea.Position手動設置每個圖表區域的位置並改變循環中的每個圖表的posY

這工作很好,給了我很多控制,因爲ChartAreas.Position也有寬度和高度屬性,並允許我輕鬆對齊圖表區域橫向使用每個圖表區域的y座標。