У меня есть BarChartView
с 31 полосой и, следовательно, 31 меткой. Все добавляю и настраиваю по примерам и работает как надо - разве что BarChartView отображает только каждую 3-ю метку. Итак, я пытаюсь распечатать 1, 2, 3, 4, 5, 6,..., 30, 31, но он печатает 1, 4, 7, 11,..., 31. Как я могу это изменить? Мне даже не нужно печатать все метки, все, что мне действительно нужно, это первая и последняя метка, то есть 1 и 31, но я не могу понять, как это установить.
Я пробовал установить метку nil
для каждого бара, который не является первым или последним, но это тоже ничего не дает. Я считаю, что причина, по которой он печатает каждую третью этикетку, заключается в том, что он не может вместить их все, верно? Моя настройка для BarChartView
:
barChartView.descriptionText = ""
barChartView.noDataTextDescription = ""
barChartView.drawGridBackgroundEnabled = false
barChartView.xAxis.drawAxisLineEnabled = false
barChartView.xAxis.drawGridLinesEnabled = false
barChartView.xAxis.drawLabelsEnabled = true
barChartView.drawBordersEnabled = false
barChartView.leftAxis.enabled = false
barChartView.rightAxis.enabled = false
barChartView.legend.enabled = false
barChartView.xAxis.labelPosition = .Bottom
barChartView.xAxis.labelTextColor = UIColor.whiteColor()
barChartView.xAxis.labelFont = UIFont(name: timesNewRoman, size: barChartView.xAxis.labelFont.pointSize)!
barChartView.dragEnabled = false
barChartView.highlightEnabled = false
barChartView.scaleXEnabled = false
barChartView.scaleYEnabled = false
и я добавляю xValues
вот так:
for (index, value) in plotData.enumerate() {
var xValue: String?
xValue = index == 0 || index == plotData.count-1 ? "\(index + 1)" : nil
barChartData.addXValue(xValue)
let dataEntry = BarChartDataEntry(value: Double(value), xIndex: index)
dataEntries.append(dataEntry)
}