我是编码的新手,所以如果这是一个基本问题,我很抱歉。我正在使用 Daniel Gindi 的 iOS-Charts(他的 Github 上的最新版本)使用以下代码设置条形图:
import UIKit
import Charts
class BarChartViewController: UIViewController {
var barChartView: BarChartView!
var days: [String]!
override func viewDidLoad() {
super.viewDidLoad()
days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"]
let tasks = [1.0, 1.0, 1.5, 2.0, 3.0, 5.0, 0.0]
setChart(days, values: tasks)
}
func setChart(dataPoints: [String], values: [Double]) {
barChartView.noDataText = "You need to provide data for the chart."
var dataEntries: [BarChartDataEntry] = Array()
var counter = 0.0
for i in 0..<dataPoints.count {
counter += 1.0
let dataEntry = BarChartDataEntry(x: values[i], y: counter)
dataEntries.append(dataEntry)
}
let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Time")
let chartData = BarChartData(xVals: days, dataSet: chartDataSet)
barChartView.data = chartData
}
}
这会提示 func setChart 出错:
在
let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Time")
调用中的参数不正确(有 yVals,期望值)。但是如果把yVals改成values,会在下一行提示错误:
let chartData = BarChartData(xVals: days, dataSet: chartDataSet)
错误是:无法使用类型为“(xVals:[String]!, dataSet: BarChartDataSet)”的参数列表为类型“BarChartData”调用初始化程序
我查看了 ChartsDemo,但我不确定我到底在寻找什么(而且我在尝试构建演示时似乎遇到了编译错误)。
有人可以帮我解决这个问题吗?
最佳答案
试试这个
func setChart(dataPoints: [String], values: [Double]) {
barChartView.noDataText = "You need to provide data for the chart."
var dataEntries: [BarChartDataEntry] = Array()
var counter = 0.0
for i in 0..<dataPoints.count {
counter += 1.0
let dataEntry = BarChartDataEntry(x: values[i], y: counter)
dataEntries.append(dataEntry)
}
let chartDataSet = BarChartDataSet(values: dataEntries, label: "Time")
let chartData = BarChartData()
chartData.addDataSet(chartDataSet)
barChartView.data = chartData
}
关于ios - 在 iOS-Charts (Xcode 7.3.1) 中设置 X 轴和 Y 轴时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39008745/