MS Chart with ASP.NET chart type “column” not show

2019-01-23 14:38发布

I have a problem with an MS Chart chart type column. If there are more than 9 bars in the chart, the axis-x labels won't show up properly, some of them just disappear.

Here's my mark-up for the chart:

<asp:Chart ID="chtNBAChampionships" runat="server">
   <Series>
      <asp:Series Name="Championships" YValueType="Int32" Palette="Berry"   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" />
            <asp:DataPoint AxisLabel="Mara" YValues="4" />
            <asp:DataPoint AxisLabel="Saza" YValues="9" />
            <asp:DataPoint AxisLabel="Buha" YValues="6" />

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

With only 9 bars it works, but I don't know why it fails with more than 9 bars. Is there any way to make the chart work properly? Also, if possible, how to make each bar have different color?

4条回答
劳资没心,怎么记你
2楼-- · 2019-01-23 14:53
<ChartAreas>
<asp:ChartArea Name="ChartArea1" >
<AxisY Title="Progress->">
</AxisY>
<AxisX Interval="1" Title="Activity->">
</AxisX>
</asp:ChartArea>
查看更多
神经病院院长
3楼-- · 2019-01-23 14:58

Chart2.ChartAreas["ChartArea1"].AxisX.Interval = 1;

查看更多
Summer. ? 凉城
4楼-- · 2019-01-23 15:05

Try setting the width of the chart and see if that resolves issue with only showing 9 bars.

<asp:Chart ID="chtNBAChampionships" runat="server" Width="400px">

You can set the color in the DataPoint.

<asp:DataPoint AxisLabel="Celtics" YValues="17" Color="Green" />
查看更多
太酷不给撩
5楼-- · 2019-01-23 15:14

I had the same problem, but i'm using c# on page load.

I solved it by adding this

    Chart2.ChartAreas["ChartArea1"].AxisX.Interval = 1;
查看更多
登录 后发表回答