如何禁用显示在月份标签后面的X轴下方的0.0数字?

问题描述 投票:0回答:1

如何禁用显示在月份标签后面的X轴下方的0.0数字?我试图禁用一些xAxis属性,但是没有用,我正在使用IOS图表。

@IBOutlet weak var chartView: BarChartView!

var completedGoals = [Double]()
var totalGoals = [Double]()
let months = ["Jan", "Feb", "Mar", "Apr", "May","JUN","JUL","AUG","SEP","OCT","NOV","DEC"]

func configure() {
    chartView.delegate = self as? ChartViewDelegate
    chartView.isUserInteractionEnabled = false
    chartView.drawBarShadowEnabled = false
    chartView.drawValueAboveBarEnabled = false

    let xAxis = chartView.xAxis
    xAxis.drawGridLinesEnabled = false
    xAxis.labelPosition = .bottom
    xAxis.centerAxisLabelsEnabled = true
    xAxis.valueFormatter = IndexAxisValueFormatter(values:months)
    xAxis.granularity = 1
    xAxis.labelCount = 12

    let leftAxisFormatter = NumberFormatter()
    leftAxisFormatter.maximumFractionDigits = 1

    let yaxis = chartView.leftAxis
    yaxis.spaceTop = 0.35
    yaxis.axisMinimum = 0
    yaxis.drawGridLinesEnabled = false

    chartView.rightAxis.enabled = false

    setChart()
}

func setChart() {
    var dataEntries1 = [BarChartDataEntry]()
    var dataEntries2 = [BarChartDataEntry]()
    let xValuesForTotalGoals = [0.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,10.5,11.5]

    totalGoals = data.monthly(goals: data.allGoalsObjects(achieved: false))
    completedGoals = data.monthly(goals: data.allGoalsObjects(achieved: true))
    for i in 0..<months.count {
        dataEntries1.append(BarChartDataEntry(x: xValuesForTotalGoals[i], y: totalGoals[i]))
        dataEntries2.append(BarChartDataEntry(x: Double(i), y: completedGoals[i]))
    }
    let chartDataSet1 = BarChartDataSet(entries: dataEntries1, label: "Total Number Of Goals")
    let chartDataSet2 = BarChartDataSet(entries: dataEntries2, label: "Completed Goals")
    chartDataSet1.colors = [UIColor.black]
    chartDataSet1.valueTextColor = UIColor.white
    chartDataSet2.colors = [UIColor.gray]
    let chartData = BarChartData(dataSets: [chartDataSet1, chartDataSet2])
    let barWidth = 0.5
    chartData.barWidth = barWidth
    chartView.notifyDataSetChanged()
    chartView.data = chartData
    chartView.animate(xAxisDuration: 1.5, yAxisDuration: 1.5, easingOption: .linear)
}

enter image description here

swift ios-charts
1个回答
0
投票

我不记得是什么属性,请尝试每个属性

xAxis.enabled = false.
rightAxis.enabled = false.
© www.soinside.com 2019 - 2024. All rights reserved.