构造器图表Swift 3上不带x值的LineChartData

构造器图表Swift 3上不带x值的LineChartData,swift,charts,swift3,core-graphics,Swift,Charts,Swift3,Core Graphics,我在swift 3.0 Xcode项目中使用iOS Charts.framework() 我知道“所有数据集构造函数都已更改-它们不再采用x索引数组”,但如果LineChartData不再具有“xVals”参数,我现在如何在x轴上放置字符串??? 以前很容易做到这一点 let weights: [Double] = self.getWeigths() let weightDates: [String] = self.getWeightDates() var yValues : [ChartDa

我在swift 3.0 Xcode项目中使用iOS Charts.framework()

我知道“所有数据集构造函数都已更改-它们不再采用x索引数组”,但如果LineChartData不再具有“xVals”参数,我现在如何在x轴上放置字符串??? 以前很容易做到这一点

let weights: [Double] = self.getWeigths()
let weightDates: [String] = self.getWeightDates()

var yValues : [ChartDataEntry] = [ChartDataEntry]()
    for i in 0 ..< dateLastWeights.count {
        let entry = ChartDataEntry(x: Double(i), y: weights[i])
        yValues.append(entry)
    }
let set: LineChartDataSet = LineChartDataSet(values: yValues, label: "First Set")
var dataSets : [LineChartDataSet] = [LineChartDataSet]()
dataSets.append(set)

let data: LineChartData = LineChartData(xVals: weightDates, dataSets: dataSets)
let weights:[Double]=self.getweights()
让weightDates:[String]=self.getWeightDates()
变量Y值:[ChartDataEntry]=[ChartDataEntry]()
对于0中的i..
在尝试了很多东西并与其他开发人员讨论后,我们成功了

self.lineChart.xAxis.granularity = 1
self.lineChart.xAxis.valueFormatter = DefaultAxisValueFormatter(block: { (index, _) -> String in
        return self.dateLastWeights[Int(index)]
    })

从3.0.1版本开始,您还可以执行以下操作:

lineChart.xAxis.valueFormatter = IndexAxisValueFormatter(values: labels)
lineChart.xAxis.granularity = 1.0