leftAxis 标签的位置
Position of leftAxis labels
我有一个 LineChartView
,在 leftAxis
上有标签。我想在图表上有一个偏移量,然后使用免费的 space 来显示标签。我目前有以下内容:
chartView.leftAxis.labelPosition = YAxis.LabelPosition.outsideChart
chartView.leftAxis.xOffset = 12
labelPosition
仅提供外部和内部图表。
但我想将标签向左移动一点,是否可以为标签指定一个偏移量或以某种方式将它们向左移动一点?
y轴上的值可以存储为字符串,然后你可以在每个值上添加白色spaces来将它们向左移动。
var yvalues: [String] = [String]()
yvalues.append("0 ")
yvalues.append("1 ")
yvalues.append("2 ")
yvalues.append("3 ")
yvalues.append("4 ")
yvalues.append("5 ")
yvalues.append("6 ")
yvalues.append("7 ")
yvalues.append("8 ")
yvalues.append("9 ")
yvalues.append("10 ")
chartView.leftAxis.valueFormatter = IndexAxisValueFormatter(values: yvalues)
现在左轴和图表之间的 space 比右轴和图表之间的要多得多:
这是一个更简洁的解决方案:
1. 创建这个 class:
class MyIndexFormatter: IndexAxisValueFormatter {
open override func stringForValue(_ value: Double, axis: AxisBase?) -> String
{
return "\(value) "
}
}
在您的控制器中:
chartView.leftAxis.valueFormatter = MyIndexFormatter()
结果:
我有一个 LineChartView
,在 leftAxis
上有标签。我想在图表上有一个偏移量,然后使用免费的 space 来显示标签。我目前有以下内容:
chartView.leftAxis.labelPosition = YAxis.LabelPosition.outsideChart
chartView.leftAxis.xOffset = 12
labelPosition
仅提供外部和内部图表。
但我想将标签向左移动一点,是否可以为标签指定一个偏移量或以某种方式将它们向左移动一点?
y轴上的值可以存储为字符串,然后你可以在每个值上添加白色spaces来将它们向左移动。
var yvalues: [String] = [String]()
yvalues.append("0 ")
yvalues.append("1 ")
yvalues.append("2 ")
yvalues.append("3 ")
yvalues.append("4 ")
yvalues.append("5 ")
yvalues.append("6 ")
yvalues.append("7 ")
yvalues.append("8 ")
yvalues.append("9 ")
yvalues.append("10 ")
chartView.leftAxis.valueFormatter = IndexAxisValueFormatter(values: yvalues)
现在左轴和图表之间的 space 比右轴和图表之间的要多得多:
这是一个更简洁的解决方案: 1. 创建这个 class:
class MyIndexFormatter: IndexAxisValueFormatter {
open override func stringForValue(_ value: Double, axis: AxisBase?) -> String
{
return "\(value) "
}
}
在您的控制器中:
chartView.leftAxis.valueFormatter = MyIndexFormatter()
结果: