在我的aspx页面中,我有一个简单的图表,代码如下:
state.show_sls
代码隐藏:
<asp:Chart ID="chartTipo1" runat="server" BackColor="Transparent" Palette="Pastel" TextAntiAliasingQuality="High" Width="1400px" Height="500px" Visible="false">
<Series></Series>
<ChartAreas>
<asp:ChartArea Name="ChartArea1">
<AxisX IsStartedFromZero="True" LineColor="LightGray" LabelAutoFitStyle="LabelsAngleStep30" IsLabelAutoFit="true">
<MajorGrid LineColor="White" />
</AxisX>
<AxisY LineColor="LightGray">
<MajorGrid LineColor="LightGray" />
</AxisY>
</asp:ChartArea>
</ChartAreas>
<Legends>
<asp:Legend BorderWidth="1"></asp:Legend>
</Legends>
</asp:Chart>
我为每个不同的类型创建一个系列,然后添加点。在此之后,我为每列添加一个标签(我应该有6个不同的列,来自6个不同的位置)。
正如您所看到的,图表是错误构建的,因为位置'Azeitão'只有一种类型关联,而不是图表中显示的更多。
我做错了什么?
答案 0 :(得分:1)
在@jstreet的帮助下,我能够解决问题。
我做了什么: 我创建了一个包含所有不同位置的列表,以及一个包含所有不同类型的列表。然后,对于DataTable中的每一行,我使用
搜索了具有此位置和此类型的行。DataRow[] lRow = dtTipos.Select("LOCATION= '" + l + "' AND TYPE= '" + t + "'");
然后,如果我找到了一行,我会在对应的值中添加一个Point,否则我会在列中添加一个值为0的Point,这样我就可以为每个类型创建一个空列。 t存在于每个位置。
问题解决了。