2010-06-17 84 views
2

使用Zedgraph(asp.net)。我有一個基於日期時間x點的條形圖。第一個酒吧沒有標籤。第一個標籤位於y軸,對應於我第一天的前一天。我並不太在意這一點。然而,第二個標籤在第二個標籤上。我需要第一個酒吧有一個標籤。我確實有MyPane.XAxis.Scale.IsSipFirstLabel = false。ZedGraph - 如何強制第一個和最後一個酒吧有X軸標籤?

我該如何強制第一個標籤貼上標籤?爲什麼ZedGraph不在那裏貼標籤?

增加:

欲「5/20」,以顯示所述第一杆,而不是5/19 y軸下。我甚至沒有5/19的條目。

alt text http://i50.tinypic.com/29ogx0n_th.gif

+0

任何代碼或圖像的例子? – Gacek 2010-06-17 20:11:48

+0

看我的加法。 – 2010-06-18 16:08:16

回答

2

OK,我不知道如果這是你需要的東西,而是:

首先,調整規模手動範圍:

zg1.MasterPane[0].XAxis.Scale.Min = (double)new XDate(2010, 05, 19); 
zg1.MasterPane[0].XAxis.Scale.Max = (double)new XDate(2010, 05,30); 

這將設置的範圍您的比例顯示前一天和後一天您的數據(這是需要有額外的空間)

然後,設置步驟:

zg1.MasterPane[0].XAxis.Scale.MajorStep = 1; 
zg1.MasterPane[0].XAxis.Scale.FontSpec.Angle = 90f; 

這會導致您每天都會有一個標籤。實際上,這是對出現的標籤進行或多或少的控制的唯一方法。我也改變了標籤的角度(在正常位置它會重疊)。
但它會爲第一個和最後一個額外的日子(邊距)創建標籤。所以我們需要禁用這兩個條目(現在它可以工作,因爲你已經手動設置了範圍)。

zg1.MasterPane[0].XAxis.Scale.IsSkipFirstLabel = true; 
zg1.MasterPane[0].XAxis.Scale.IsSkipLastLabel = true; 

如果你只是想禁用此第一和最後一個額外的標籤,其餘的留給ZedGraph,只是ommit第二步。但結果可能有時是不可預測的。

相關問題