2016-12-21 26 views
0

私のプロジェクトではios-chartsを横棒グラフ用に実装しています。バーの上に表示する個々のバーの値が必要です(グラフは水平なので、バーはバーの右側に表示されます)。しかし、私はそれを動作させることができません。コードは以下の通りである:水平バーの上にバーが表示されないios-charts

func setupHorizontalChartView() { 

     self.chartView.chartDescription?.enabled = false 
     chartView.dragEnabled = false 
     chartView.setScaleEnabled(true) 
     chartView.pinchZoomEnabled = false 

     let chartXAxis = chartView.xAxis 
     chartXAxis.labelPosition = .bottom 

     let chartLeftAxis = chartView.leftAxis 
     chartLeftAxis.labelFont = NSUIFont(name: "Helvetica", size: 12)! 
     chartLeftAxis.labelTextColor = UIColor.darkGray 

     chartView.rightAxis.enabled = false 

     chartView.drawValueAboveBarEnabled = true 

     let formatter = BarChartFormatter() 
     formatter.setValues(values: self.months) 

     chartView.xAxis.valueFormatter = formatter 
     chartView.xAxis.setLabelCount(self.months.count - 1, force: false) 

     chartView.xAxis.drawGridLinesEnabled = false 
     chartView.leftAxis.drawGridLinesEnabled = false 

     chartView.xAxis.drawAxisLineEnabled = false 
     chartView.leftAxis.drawAxisLineEnabled = false 

     chartView.leftAxis.drawLabelsEnabled = false 
    } 

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

     var dataEntries: [BarChartDataEntry] = [] 

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

     let chartDataSet = BarChartDataSet(values: dataEntries, label: "Units Sold") 

     chartDataSet.drawValuesEnabled = true 
     let chartData = BarChartData(dataSet: chartDataSet) 
     chartData.setDrawValues(true) 

     chartView.data = chartData 
    } 

drawValueAboveBarEnabledはchartView trueに設定されています。 Horizo​​ntalBarChartViewの代わりにBarChartViewに同じコードを使用すると、バーの値がバーの上に表示されます。ただし、横棒グラフ表示では機能しません。

答えて

1

設定 chartView.leftAxis.axisMinimum = 0 私を助けました。 ここでそのディスカッションを開きましたGitHub

関連する問題