我正在使用Daniel 3.0的Daniel Gindi编写的ios-charts。我为条形图编写了以下代码

var dataEntries: [BarChartDataEntry] = []
for i in 0..<dateTime.count {
    let dateFormatter = DateFormatter()
    dateFormatter.dateFormat = "MM/dd/yyyy hh:mm:ss aa"
    let dateObj = dateFormatter.date(from: dateTime[i])
    let timeIntervalForDate = dateObj!.timeIntervalSince1970
    let dataEntry = BarChartDataEntry(x: Double(timeIntervalForDate), y: Double(readings[i]))
    dataEntries.append(dataEntry)
}
let chartDataSet = BarChartDataSet(values: dataEntries, label: "Units")
let chartData = BarChartData(dataSet: chartDataSet)
self.ChartsView.data = chartData

我在模拟器中得到以下结果:
ios - iOS图表未在图表中显示线/条-LMLPHP

您看不到任何红线反映了我的价值观。我什至放大了图表,但什么也没显示。

我还尝试了带有示例值的折线图。这是代码:
let dollars1 = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0, 4.0, 18.0, 2.0, 4.0, 5.0, 4.0]
let months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
var yValues : [ChartDataEntry] = [ChartDataEntry]()
for i in 0 ..< months.count {
    yValues.append(ChartDataEntry(x: Double(i + 1), y: dollars1[i]))
}
let LineData = LineChartData()
let ds = LineChartDataSet(values: yValues, label: "Months")

LineData.addDataSet(ds)
self.ChartsView.data = LineData

其结果更加奇怪。此图表中也未显示网格线。这是图片。

我不确定这些图表有什么问题。我错过了什么吗?到目前为止,由于大多数解决方案都在使用旧版本的图表,因此我看不到任何其他内容(或者可能是我不知道的其他内容)。请指导我正确的方向。谢谢

ios - iOS图表未在图表中显示线/条-LMLPHP

最佳答案

我在3.0版和Swift 3方面苦苦挣扎,而且缺乏文档...我可以为您指出关于该主题的最佳文本,可以找到here

Xvals作为参数消失了,取而代之的是在轴上使用二维数据

关于时间值问题..您可以使用日期对象的“timeIntervalSince1970”并使用扩展名格式化内容

return dateFormatter.string(from: Date(timeIntervalSince1970: value))

所有这些都可以在上述链接中找到

07-26 09:37
查看更多