RadHtmlChart 不跳过 NULL 值
RadHtmlChart not skipping NULL values
我有一个包含 NULL 值的 RadHtmlChart,而不是跳过或插入值,它们被计为零。
这是我的图表:
<Telerik:RadHtmlChart ID="rhc" runat="server">
<PlotArea>
<Series>
<Telerik:ScatterLineSeries Name="Intl" DataFieldX="a1" DataFieldY="a2" MissingValues="Interpolate">
<TooltipsAppearance DataFormatString="{1:N}% on {0:MM/dd}" />
<MarkersAppearance Visible="true" />
</Telerik:ScatterLineSeries>
<< - I have 7 more entries following - >>
</Series>
<XAxis BaseUnit="Weeks" Step="1">
<LabelsAppearance DataFormatString="{0:MM/dd}" />
</XAxis>
<YAxis MaxValue="102" MinValue="0" Step="5">
<TitleAppearance Text="Percentage" />
</YAxis>
</PlotArea>
<Legend>
<Appearance Position="Bottom" />
</Legend>
</Telerik:RadHtmlChart>
我正在后面的代码中设置图表的数据源。这是一个小样本:
a1 a2 b1 b2 c1 c2 d1 d2
5/02/2016 100 5/02/2016 96 5/02/2016 100 5/02/2016 (NULL)
5/09/2016 100 5/09/2016 100 5/09/2016 100 5/09/2016 (NULL)
5/16/2016 66 5/16/2016 100 5/16/2016 100 5/16/2016 100
5/23/2016 88 5/23/2016 80 5/23/2016 100 5/23/2016 100
5/30/2016 100 5/30/2016 100 5/30/2016 100 5/30/2016 (NULL)
e1 e2 f1 f2 g1 g2 h1 h2
5/02/2016 100 5/02/2016 100 5/02/2016 100 5/02/2016 98
5/09/2016 100 5/09/2016 5 5/09/2016 100 5/09/2016 83
5/16/2016 100 5/16/2016 (NULL) 5/16/2016 (NULL) 5/16/2016 80
5/23/2016 20 5/23/2016 66 5/23/2016 (NULL) 5/23/2016 63
5/30/2016 100 5/30/2016 100 5/30/2016 (NULL) 5/30/2016 100
A1 到 H2 每个日期都是 1 条记录。我已经检查过我是否在每个系列上设置了 "MissingValues" 参数。我在调试模式下跟踪我的数据源,并确保在将其分配给图表之前没有任何值被设置为零,但它仍然显示为零。
不清楚预期的行为是什么。您是否希望完全不显示数值为空的日期?如果是这种情况,您最好在绑定之前从数据中删除它们。
抱歉,我的 VB 太生疏了,所以这里有一些 C#;
List<Day> dataSource = getData();
foreach(Day d in dataSource)
if (d.Number == null)
dataSource.Remove(d);
我有一个包含 NULL 值的 RadHtmlChart,而不是跳过或插入值,它们被计为零。
这是我的图表:
<Telerik:RadHtmlChart ID="rhc" runat="server">
<PlotArea>
<Series>
<Telerik:ScatterLineSeries Name="Intl" DataFieldX="a1" DataFieldY="a2" MissingValues="Interpolate">
<TooltipsAppearance DataFormatString="{1:N}% on {0:MM/dd}" />
<MarkersAppearance Visible="true" />
</Telerik:ScatterLineSeries>
<< - I have 7 more entries following - >>
</Series>
<XAxis BaseUnit="Weeks" Step="1">
<LabelsAppearance DataFormatString="{0:MM/dd}" />
</XAxis>
<YAxis MaxValue="102" MinValue="0" Step="5">
<TitleAppearance Text="Percentage" />
</YAxis>
</PlotArea>
<Legend>
<Appearance Position="Bottom" />
</Legend>
</Telerik:RadHtmlChart>
我正在后面的代码中设置图表的数据源。这是一个小样本:
a1 a2 b1 b2 c1 c2 d1 d2
5/02/2016 100 5/02/2016 96 5/02/2016 100 5/02/2016 (NULL)
5/09/2016 100 5/09/2016 100 5/09/2016 100 5/09/2016 (NULL)
5/16/2016 66 5/16/2016 100 5/16/2016 100 5/16/2016 100
5/23/2016 88 5/23/2016 80 5/23/2016 100 5/23/2016 100
5/30/2016 100 5/30/2016 100 5/30/2016 100 5/30/2016 (NULL)
e1 e2 f1 f2 g1 g2 h1 h2
5/02/2016 100 5/02/2016 100 5/02/2016 100 5/02/2016 98
5/09/2016 100 5/09/2016 5 5/09/2016 100 5/09/2016 83
5/16/2016 100 5/16/2016 (NULL) 5/16/2016 (NULL) 5/16/2016 80
5/23/2016 20 5/23/2016 66 5/23/2016 (NULL) 5/23/2016 63
5/30/2016 100 5/30/2016 100 5/30/2016 (NULL) 5/30/2016 100
A1 到 H2 每个日期都是 1 条记录。我已经检查过我是否在每个系列上设置了 "MissingValues" 参数。我在调试模式下跟踪我的数据源,并确保在将其分配给图表之前没有任何值被设置为零,但它仍然显示为零。
不清楚预期的行为是什么。您是否希望完全不显示数值为空的日期?如果是这种情况,您最好在绑定之前从数据中删除它们。
抱歉,我的 VB 太生疏了,所以这里有一些 C#;
List<Day> dataSource = getData();
foreach(Day d in dataSource)
if (d.Number == null)
dataSource.Remove(d);