You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C# .NET Chart控件:如何将柱状图标签显示在柱子中间而非顶部

C# .NET Chart控件:如何将柱状图标签显示在柱子中间而非顶部

嘿,我之前刚好碰到过一模一样的需求,给你说个简单直接的解决办法!

你现在已经开启了IsValueShownAsLabel = true让标签显示出来,接下来只需要给对应的Series设置一下标签位置属性就能搞定:

针对WinForms Chart控件的实现

直接给目标数据系列设置LabelPosition为Center就可以,代码示例如下:

// 假设你的图表控件实例名为chart1,目标数据系列名为"YourSeriesName"
chart1.Series["YourSeriesName"].IsValueShownAsLabel = true;
// 核心设置:把标签位置切换到柱子中间
chart1.Series["YourSeriesName"].LabelPosition = LabelPosition.Center;

针对WPF Toolkit Chart控件的实现

如果用的是WPF的图表控件,调整方式类似,通过XAML设置标签的对齐方式即可:

<chartingToolkit:ColumnSeries Title="YourSeries" 
                              ItemsSource="{Binding YourData}"
                              DependentValuePath="Value" 
                              IndependentValuePath="Category"
                              IsValueShownAsLabel="True">
    <chartingToolkit:ColumnSeries.LabelStyle>
        <Style TargetType="Control">
            <Setter Property="HorizontalContentAlignment" Value="Center"/>
            <Setter Property="VerticalContentAlignment" Value="Center"/>
            <!-- 可选:调整边距让标签更贴合柱子内部 -->
            <Setter Property="Margin" Value="-8,0,-8,0"/>
        </Style>
    </chartingToolkit:ColumnSeries.LabelStyle>
</chartingToolkit:ColumnSeries>

效果说明

  • 原始效果:你当前的设置会让标签默认显示在柱子的顶部位置
  • 期望效果:设置完成后,标签会自动居中显示在柱子的垂直和水平中间位置,和你期望的效果一致

备注:内容来源于stack exchange,提问作者Tim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 09:28:06