2016-11-18 4 views
1

У меня было хранили мое значение в основных данных и отображалось в BarChart. Моя категория составляет 8,5 и 420,10.Графики 3.0 - Невозможно показать десятичную дробь в BarChart - iOS Swift

Но дисплей на диаграмме составляет 8 и 420. Как установить значение в десятичном формате?

enter image description here

var dataEntries: [BarChartDataEntry] = [] 

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

let chartDataSet = BarChartDataSet(values: dataEntries, label: "Total Amount") 
chartDataSet.colors = [.red, .yellow, .green, .blue, .brown] 
chartDataSet.colors = ChartColorTemplates.joyful() 
barChartView.xAxis.labelPosition = .bottom 
barChartView.chartDescription?.text = "" 
barChartView.xAxis.drawGridLinesEnabled = false 
barChartView.leftAxis.drawLabelsEnabled = false 
barChartView.leftAxis.granularityEnabled = true 

let chartData = BarChartData() 
chartData.addDataSet(chartDataSet) 
barChartView.data = chartData 

ответ

2

я получаю ответ:

let format = NumberFormatter() 
format.numberStyle = .decimal 
let formatter = DefaultValueFormatter(formatter: format) 
chartData.setValueFormatter(formatter) 
0

Попробуйте использовать NSNumberFormatter:

let numberFormatter = NumberFormatter() 
numberFormatter.numberStyle = .decimal 
barChartView.leftAxis.valueFormatter = numberFormatter 

Попробуйте увидеть, класс значение бар и применять его там, вероятно, будет иметь

+0

Ошибка: Невозможно присвоить значение типа «NumberFormatter» для ввода «IAxisValueFormatter» – user831098

+0

Используете ли вы Swift 3? – Tj3n

+0

Да, я использую Swift3 – user831098