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

C1Chart中#XVAL显示数组索引而非自定义标签的原因咨询

解决C1Chart中#XVAL显示数组索引而非自定义标签的问题

我来帮你搞定这个C1Chart的X轴标签显示问题~

首先得明确:#XVAL这个占位符默认就是引用数据点的数组索引,所以它只会显示0、1、2、3这类值,不会自动关联你的自定义标签数组。而你尝试的#AXISLABEL其实是用来设置轴的标题(比如给X轴加个“百分比区间”的标题),不是用来显示每个数据点的标签,所以没用是正常的。

正确的解决步骤

要显示你定义的< 0.50%这类自定义标签,需要把标签数组绑定到X轴的LabelCollection,并指定轴使用自定义标签:

  1. 清空默认标签并设置标签规则:告诉X轴我们要使用自定义标签,而不是默认的索引
  2. 将自定义标签添加到轴的标签集合:把你的items数组逐个加入X轴的标签列表

完整代码示例(补全你的片段)

Private Sub LoadGraphicChart()
    Try
        C1Chart2.ChartGroups(0).ChartData.SeriesList.Clear()
        
        ' 自定义标签数组
        Dim items As String() = New String() {"< 0.50%", "0.50% - 1.00%", "1.00% - 2.00%", "> 2.00%"}
        ' 假设你的数据数组(替换成实际数据)
        Dim unitHData As Double() = New Double() {15, 25, 30, 10}
        
        ' 添加数据系列到图表
        Dim dataSeries As New C1.Win.C1Chart.Series()
        dataSeries.Y.Data = unitHData
        C1Chart2.ChartGroups(0).ChartData.SeriesList.Add(dataSeries)
        
        ' 关键:配置X轴自定义标签
        ' 告诉X轴使用自定义标签集合中的内容
        C1Chart2.ChartArea.AxisX.Labels.Text = "#LABEL"
        ' 清空默认的索引标签
        C1Chart2.ChartArea.AxisX.Labels.Clear()
        ' 循环添加自定义标签
        For Each labelText As String In items
            C1Chart2.ChartArea.AxisX.Labels.Add(labelText)
        Next
        
        ' 刷新图表生效
        C1Chart2.Refresh()
    Catch ex As Exception
        MessageBox.Show($"加载图表出错:{ex.Message}")
    End Try
End Sub

额外说明

  • 如果你的数据系列的X值不是连续的0-3(比如自定义了X轴数值),需要确保标签的索引和数据点的X值对应,或者使用LabelValue来关联特定X值的标签
  • 如果是饼图,标签设置逻辑略有不同,需要配置PieLabelStyle并绑定标签,但从你的描述看应该是柱状/折线图,上面的方法完全适用

内容的提问来源于stack exchange,提问作者ShiroNekoDesu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:26:48