2011-04-19 13 views
1

我正在使用Microsoft提供的ASP.NET Chart Control。我有一個簡單的2D圖表,其中有兩個系列,一個是正面的,另一個是負面的。這是它看起來像目前:Picture of my chartASP.NET圖表控件 - 將標籤添加到AxisY交叉而不刪除主要網格線的自動標籤

我猜測,因爲我的數據範圍,Y軸在零默認情況下不顯示。但是,如果我添加此行(如上圖所示):

AxisY.Crossing = 0; 

AxisY是對Y軸對象的引用。有沒有辦法現在標記軸而不必手動標記所有主要的網格線?如果我這樣做,它會將此軸,但所有其他美元標籤消失:

Chart.ChartAreas[0].AxisY.CustomLabels.Add(new CustomLabel(0, 1, "0", 0, LabelMarkStyle.SideMark)); 

這裏是我的ASP.NET代碼:

<asp:Chart ID="chartStudyResults" runat="server" AntiAliasing="All" 
     Height="650px" Width="690px"> 
     <Series> 
     </Series> 
     <ChartAreas> 
      <asp:ChartArea Name="main" IsSameFontSizeForAllAxes="true"> 
       <AxisX Interval="1" IntervalAutoMode="VariableCount">      
        <MajorGrid Enabled="false" />         
       </AxisX>       
       <AxisY> 
        <MajorGrid Enabled="true" /> 
       </AxisY> 
      </asp:ChartArea> 
     </ChartAreas> 
    </asp:Chart> 

我加入序列數據的代碼。提前致謝。

回答

0

您是否手動設置AxisY間隔?如果是這樣,您需要進行調整,以便零是主要的標記之一,或者不設置AxisY間隔。

+0

不,我沒有設置AxisY間隔。我有這樣不同的數據,如果我這樣做,它會使一些非常惡劣的圖形。我想我可以寫一個儘可能多的算法,也許這可以解決我的問題。 – Quesi 2011-06-30 14:49:20