使用 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.
希望这对您有所帮助!
我正在使用 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.
希望这对您有所帮助!