iOS-图表不会将 x 轴置于 y 轴上的零

iOS-charts won't put the x-axis at zero on the y-axis

我无法获得 iOS-charts 条形图以将 x 轴上的条形图设为零(条形图的底部)。它们似乎漂浮在 x 轴上方:

橙色的条设置为 100,这是用于说明的 y 轴的最大高度。唯一可能会在下午 3 点左右出现空白 space。

我已经rightAxis.axisMinValue = 0设置了。

我刚刚变通了,这对我有用。

参考这段代码即可。

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var barChartView: BarChartView!

    override func viewDidLoad() {
    super.viewDidLoad()

        let months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
        let unitsSold = [20.0, 4.0, 6.0, 3.0, 0.0, 16.0]

        setChart(months, values: unitsSold)

    }


    func setChart(dataPoints: [String], values: [Double]) {

        var dataEntries: [BarChartDataEntry] = []

        for i in 0..<dataPoints.count {
            let dataEntry = BarChartDataEntry(value: values[i], xIndex: i)
            dataEntries.append(dataEntry)
        }

        let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Units Sold")
        let chartData = BarChartData(xVals: dataPoints, dataSet: chartDataSet)
        barChartView.data = chartData

        chartDataSet.colors = ChartColorTemplates.colorful()
    }  
}

barChartView.leftAxis.spaceBottom = 0.0

适合我,适合你 .rightAxis

在您的示例项目中,您忘记设置 dataSet.axisDependency = .Right

您是否尝试过将右侧 y 轴的最小值设置为零 (rightAxisY.axisMinimum = 0)?这应该将 y 轴最小值设置为零线并将整个图表向下移动。

您也可以尝试启用零线 (rightAxisY.drawZeroLineEnabled = true) 并从数据中消除零值,因为您通过启用零线将零设置为最小值。