.NET图表 - 动态值标签

时间:2012-11-20 07:15:11

标签: asp.net labels asp.net-charts

我正在使用System.Web.UI.DataVisualization.Charting创建柱形图,它具有可变数量的系列和X数据点值。

我可以使用以下方式打开值标签:

myChart.Series[0].IsValueShownAsLabel = true;

根据有多少系列和数据点,这些标签可能变得不可读。有没有办法让价值标签,但只有它们是可读的?

我的想法是:

int datapointsCount = ?????;
int labelPixelSize = 15;
int chartPixelSize = ?????;

if ((myChart.Series.Count * datapointsCount * labelPixelSize) > chartPixelSize) {
    foreach (Series mySeries in myChart.Series) {
        mySeries.IsValueShownAsLabel = false;
    }
}

这非常混乱,但远非理想。

谢谢! ;)

1 个答案:

答案 0 :(得分:0)

启用Smart Label功能。

myChart.Series[0].SmartLabelStyle.Enabled = true;

控件最初尝试在数据点本身附近绘制重叠标签。如果这不起作用,它会在下一个可用空间中绘制标签,并绘制一条连接标签和数据点的线。