我正在使用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;
}
}
这非常混乱,但远非理想。
谢谢! ;)
答案 0 :(得分:0)
启用Smart Label
功能。
myChart.Series[0].SmartLabelStyle.Enabled = true;
控件最初尝试在数据点本身附近绘制重叠标签。如果这不起作用,它会在下一个可用空间中绘制标签,并绘制一条连接标签和数据点的线。