2011-11-18 70 views
2

我第一次使用ASP.NET圖表並取得了巨大成功。我想要做的一件事是放大我的圖表,以便y值不會從0到100。例如,假設我有一些從72到89的點值。我想要做的是將y值最低的值設爲72,y值最高的y值設置爲89(目前顯示值爲0,最低值爲100作爲最高)。下面是我使用的代碼:如何使用ASP.NET圖表顯示Y值的特定範圍(MS圖表)

<asp:Chart ID="Chart1" ImageLocation="~/content/images/temp/charts/ChartPic_#SEQ(300,3)" Height="325px" Width="900px" runat="server"> 
    <Titles> 
     <asp:Title Text="Overview" Font="Arial, 12pt, style=Bold" /> 
    </Titles> 
    <Legends> 
     <asp:Legend Font="Segoe UI, 8pt" Alignment="Center" BorderWidth="1" BorderDashStyle="Solid" BorderColor="#C6C6C6" Docking="Bottom" /> 
    </Legends> 
    <ChartAreas> 
     <asp:ChartArea Name="ChartArea1"> 
      <AxisY LineColor="#C6C6C6" IsInterlaced="true" InterlacedColor="#F0F0F0"> 
       <LabelStyle Font="Segoe UI, 8pt" ForeColor="#787878" /> 
       <MajorGrid LineColor="#C6C6C6" /> 
      </AxisY> 
      <AxisX LineColor="#C6C6C6"> 
       <LabelStyle Font="Segoe UI, 8pt" ForeColor="#787878" /> 
       <MajorGrid LineColor="#C6C6C6" /> 
      </AxisX> 
     </asp:ChartArea> 
    </ChartAreas> 
</asp:Chart> 

protected void Page_Load(object sender, EventArgs e) 
{ 
    var series = new Series("Overview") 
    { 
     Name = "Series1", 
     ChartType = SeriesChartType.Line, 
     MarkerStyle = MarkerStyle.Circle, 
     MarkerSize = 7, 
     XValueType = ChartValueType.Date, 
     YValueType = ChartValueType.Double,      
    }; 

    foreach (var survey in Surveys) 
    { 
     series.Points.AddXY(String.Format("{0:MMM yyyy}", survey.Month), survey.Score); 
    } 

    Chart1.Series.Add(series); 
} 

回答

5

你需要改變你的ChartAreaAxisY財產MinimumMaximum性能。

所以,在你Page_Load代碼(或任何你需要/喜歡它),你可以做這樣的事情:

ChartArea1.AxisY.Minimum = 72; 
ChartArea1.AxisY.Maximum = 89; 

您可以從AxisY設置其他一些很酷的東西(如設置Interval)/AxisX財產。

+0

真棒!感謝您的專業知識。有這麼多的屬性,我真的不知道該找什麼。這正是我需要的! – Halcyon

+0

@Halcyon難道我不知道!我剛剛纔知道使用它之前的控制權。這就是這個網站真棒=) – jadarnel27

0

我想結合AJAX使用和正常方法保持崩潰的頁面:

ChartArea.AxisY.Minimum = 100; 
ChartArea.AxisY.Maximum = 100; 

我可以用它來代替這個獲得:

AxisScaleView yAxisScaleView = new AxisScaleView(); 
yAxisScaleView.Size = 100; 
ChartArea.AxisY.ScaleView = yAxisScaleView; 
相關問題