使用 iOS 图表将点标签更改为特定字符串值?

Changing point labels to specific string values using iOS charts?

我正在使用 ios-charts 库中提供的标签功能,我希望能够设置自定义标签(作为字符串)而不是让程序自动设置标记该点的 y 值。

我用谷歌搜索了一下,找不到有任何类似问题的人,所以想知道是否有人知道如何做到这一点?

根据我的经验,您可以借助 Charts 库中的 ChartFormatter 来实现。

使用以下代码在您的图表上显示字符串值。

设置值格式化程序:

let chartFormatter = BarChartFormatter(labels: xValues)
let xAxis = XAxis()
xAxis.valueFormatter = chartFormatter
self.xAxis.valueFormatter = xAxis.valueFormatter

实现 Valuformatter 方法:

private class BarChartFormatter: NSObject, IAxisValueFormatter {

        var labels: [String] = []

        func stringForValue(_ value: Double, axis: AxisBase?) -> String {
            return labels[Int(value)]
        }

        init(labels: [String]) {
            super.init()
            self.labels = labels
        }
    }

通过为各自的图表添加以上代码,您可以在 XAxis.

上设置字符串值

Note: Replace BarChartFormatter with your Chart type.

希望这对您有所帮助!