rez*_*afi 1 axis ios swift ios-charts
我使用此代码来配置左轴:
let leftAxis = chartView.leftAxis
leftAxis.removeAllLimitLines()
leftAxis.gridLineDashLengths = [5, 5]
leftAxis.drawLimitLinesBehindDataEnabled = true
leftAxis.labelTextColor = .white
leftAxis.axisMinimum = 0
leftAxis.drawLabelsEnabled = true
let array = ["a","b","c","e","f","g","h"]
leftAxis.valueFormatter = IndexAxisValueFormatter(values: array)
leftAxis.granularity = 1
Run Code Online (Sandbox Code Playgroud)
为什么不在左轴 iOS Swift 中显示我的标签?
IndexAxisValueFormatter用于传递 x 轴标签数组,而不是 y 轴标签。您需要通过实现IAxisValueFormatter协议来创建自己的 y 轴值格式化程序。
例如,我想在 y 轴上显示某些值的自定义字符串标签。我已经创建了MyLeftAxisFormatter类。
class MyLeftAxisFormatter: NSObject, IAxisValueFormatter {
var labels: [Int : String] = [ 0 : "zero", 3 : "three", 6 : "six", 9 : "nine", 12 : "twelve", 15 : "fifteen", 18 : "eighteen"]
func stringForValue(_ value: Double, axis: AxisBase?) -> String {
return labels[Int((value).rounded())] ?? ""
}
}
Run Code Online (Sandbox Code Playgroud)
并将其用于我的图表上的左轴。
lineChartView.leftAxis.valueFormatter = MyLeftAxisFormatter()
Run Code Online (Sandbox Code Playgroud)
请记住,y 轴的显示值是由图表引擎根据视图高度、最小/最大值等各种因素计算得出的。当您更改源数据时,该值可能会发生变化。
| 归档时间: |
|
| 查看次数: |
1959 次 |
| 最近记录: |