图表 lineChartDataset 舍入值

Charts lineChartDataset rounded values

我正在使用 Swift 3.0 的 iOS 图表库进行一些尝试。 我对 lineChartDataset 值(显示在每个值点上方)的格式有疑问。现在这些值是 'double' 并且显示为 2.0 和 3.0 而不是 2 和 3 等。是否可以对这些值进行舍入?我尝试使用 numberFormatter 但没有任何效果。任何帮助将不胜感激。

ios-charts 已升级为基于协议的方法来呈现各种类型的标签,如 xAxis、yAxis 等。因此您必须实施协议 IValueFormatter 才能获得所需的结果。我已经创建了相同的class,所以直接使用它如下&你将能够达到预期的结果。

创建一个名为 DigitValueFormatter 的 class 并将其分配给 LineChartData 对象 lineChartData.setValueFormatter(DigitValueFormatter())

import Foundation
import Charts

class DigitValueFormatter : NSObject, IValueFormatter {

    func stringForValue(_ value: Double,
                        entry: ChartDataEntry,
                        dataSetIndex: Int,
                        viewPortHandler: ViewPortHandler?) -> String {
        let valueWithoutDecimalPart = String(format: "%.0f", value)
        return "\(valueWithoutDecimalPart)"
    }
}