Как сделать так, чтобы ось Y не начиналась с нуля?
Я знаю, что есть chart.leftAxis.startAtZeroEnabled = false
вариант, но он не работает для меня.
Я делаю линейный график для отслеживания подписчиков Instagram с течением времени, и у меня есть точки данных, которые очень мало меняются, поэтому мне нужно отрегулировать ось Y так, чтобы изменения были включены, но это
Вот код, который у меня есть для графика:
let chart = LineChartView(frame: chart1View.bounds)
let dayTrackerUnits = trackerCrawler.thisWeeksPoints()
var xVals : [Int] = []
var yVals : [ChartDataEntry] = []
var minimum = 1000000000
var maximum = 0
for i in 0..<dayTrackerUnits.count {
xVals.append(i)
yVals.append(ChartDataEntry(value: Double(dayTrackerUnits[i].followerCount), xIndex: i))
if dayTrackerUnits[i].followerCount < minimum {
minimum = dayTrackerUnits[i].followerCount
}
if dayTrackerUnits[i].followerCount > maximum {
maximum = dayTrackerUnits[i].followerCount
}
}
print(yVals)
let chartDataSet = LineChartDataSet(yVals: yVals, label: "Followers")
chartDataSet.setColor(GlobalStyles.sharedStyles.instagramBlue())
chartDataSet.lineWidth = 2.0
chartDataSet.circleRadius = 5.0
chartDataSet.circleColors = [GlobalStyles.sharedStyles.instagramBlue()]
chartDataSet.drawValuesEnabled = false
chartDataSet.drawVerticalHighlightIndicatorEnabled = true
let data = LineChartData(xVals: xVals, dataSet: chartDataSet)
chart.data = data
chart.delegate = self
chart.leftAxis.startAtZeroEnabled = false
chart.rightAxis.startAtZeroEnabled = false
print("min: \(minimum), max: \(maximum)")
chart.rightAxis.enabled = false
chart1View.addSubview(chart)
left1Label.text = "Followers"
Я хотел бы установить yAxisMinimum
в minimum
и yAxisMaximum
в maximum
но график не будет отображать, как я хочу.
Какие-либо предложения?
1 ответ
Вы можете просто использовать customAxisMin/Max
ограничить его диапазон.
Кстати, вы должны убедиться, что ваши значения данных не содержат 0. Кажется, что ваши данные имеют 0, поэтому они всегда начинаются с 0. У него есть небольшой алгоритм для вычисления диапазона оси в computeAxisValues
в рендере оси Y.