0

我知道有一个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"

我想设置yAxisMinimumtominimumyAxisMaximumtomaximum但图表不会显示我想要的方式。

有什么建议么?

4

1 回答 1

0

你可以只customAxisMin/Max用来限制它的范围。

顺便说一句,你必须确保你的数据值不包含 0。看起来你的数据有 0,这就是为什么它总是从 0 开始。它有一个小算法来计算computeAxisValuesy 轴渲染器中的轴范围。

于 2015-12-12T11:29:36.893 回答