我正在使用System.Web.UI.DataVisualization.Charting来显示一系列的点。我试图实现的功能类似于IsValueShownAsLabel,除了我希望标签出现在图表的顶部,而不是在数据点旁边。
我尝试过智能标签,并设置标签样式,但这些只是改变数据点旁边标签的位置,即它是否位于点的左侧或右侧而不是该点的实际位置。
我不确定在哪里可以看到,或者我想要做的事情很容易实现。
答案 0 :(得分:0)
所以我经过一些挖掘后自己找到了答案。
带有自定义标签的辅助X轴正是我所寻找的。 p>
chart.ChartAreas[0].AxisX2.Enabled = AxisEnabled.True;
然后我循环浏览我的数据点并为每个值添加自定义标签
for(var i = 0; i < chart.Series[0].Points.Count; i++)
{
var lowerValue = i + 1 - .5;
var upperValue = i + 1 + .5;
var roundedValue = Math.Round(chart.Series[0].Points[i].YValues.First(), 1);
secondaryXAxis.CustomLabels.Add(lowerValue, upperValue, roundedValue.ToString(CultureInfo.InvariantCulture));
}
建议使用-.5和+.5以确保这些点落在您想要的线上。像魅力一样。