2010-03-11 8 views
6

Mam wykres utworzony z MS Chart jak na poniższym rysunku. Jak widać pionowe linie są pomieszane z wartością góry każdego paska.ASP.NET z MS Chart wyłącza linię pionową

alt text http://img46.imageshack.us/img46/3720/chartimgaxd.png

Oto dopłata do wykresu:

 <asp:Chart ID="chtNBAChampionships" runat="server"> 
    <Series> 
     <asp:Series Name="Championships" YValueType="Int32" ChartType="Column" ChartArea="MainChartArea" IsValueShownAsLabel="true"> 
     <Points> 
      <asp:DataPoint AxisLabel="Celtics" YValues="17" /> 
      <asp:DataPoint AxisLabel="Lakers" YValues="15" /> 
      <asp:DataPoint AxisLabel="Bulls" YValues="6" /> 
      <asp:DataPoint AxisLabel="Spurs" YValues="4" /> 
      <asp:DataPoint AxisLabel="76ers" YValues="3" /> 
      <asp:DataPoint AxisLabel="Pistons" YValues="3" /> 
      <asp:DataPoint AxisLabel="Warriors" YValues="3" /> 

     </Points> 
     </asp:Series> 
    </Series> 
    <ChartAreas> 
     <asp:ChartArea Name="MainChartArea"> 
     </asp:ChartArea> 
    </ChartAreas> 
</asp:Chart> 

Nie chcę wyświetlacz oferuje pionową linię, bo to pomieszane z wartością na górze każdego słupka. Jak mogę wyłączyć linię pionową?

Dziękuję.

Odpowiedz

4

nie wiem specyficzną składnię ASP, ale tutaj jest kod VB.NET, który załatwia sprawę:

Dim gd As New System.Windows.Forms.DataVisualization.Charting.Grid 
gd.LineWidth = 0 

myChart.ChartAreas("MainChartArea").AxisX.MajorGrid = gd 

wersji C# w razie potrzeby:

System.Web.UI.DataVisualization.Charting.Grid gd = new System.Web.UI.DataVisualization.Charting.Grid(); 
gd.LineWidth = 0; 

myChart.ChartAreas[0].AxisX.MajorGrid = gd; 

Jak widać , nie możesz po prostu wyłączyć linii siatki, musisz ustawić jej szerokość na 0. MinorGrid może być ukryty w ten sam sposób.

+0

yeap, który załatwia sprawę. Dziękuję Ci. –

+1

Działa to, ale wyłączenie MajorGrid za pomocą właściwości 'Enabled' jest prawdopodobnie najlepszym sposobem, aby to zrobić. – arviman

+0

@arviman, w momencie księgowania ustawienie właściwości Enabled na wartość false w rzeczywistości nie wyłączało ani nie wyłączało linii siatki. Czy możesz potwierdzić, czy to zachowanie zmieniło się/zostało naprawione w ciągu kolejnych miesięcy? – Stewbob

1

Rozwiązało to problem. Dzięki.

Poniżej znajduje się kod C# ....

var gd = new System.Web.UI.DataVisualization.Charting.Grid(); 
gd.LineWidth = 0; 
Chart1.ChartAreas[0].AxisX.MajorGrid = gd; 
11

prosty sposób:

Chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false; 
1

Najprostszy sposób umieścić następujący kod w przypadku obciążenia wykres.

protected void Chart1_Load(object sender, EventArgs e) 
{ 
    Chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false; 
    Chart1.ChartAreas[0].AxisY.MajorGrid.Enabled = false; 

} 
0

To może pracować ze źródła

<ChartAreas> 
    <asp:ChartArea Name="ChartArea1"> 
     <AxisX> 
       <MajorGrid LineWidth="0" /> 
     </AxisX> 
    </asp:ChartArea> 
</ChartAreas>