如何为 ios-chart 上的每一列添加名称?

How can I add a name for each column on ios-chart?

我正在用 ios-chart 库做一个 BarChart。因为它类似于 MPAndroidChart 我在创建它们时没有很多问题,但我无法在每一列上方添加一个 name/label 和星期几。

在 Android 上,在将值设置为相应的 BarDataSet 之后,我使用了:

BarData data = new BarData(labels, dataset); 

其中标签是每列的名称,数据集是 BarDataSet。

问题是在 Swift 上我找不到为每一列添加标签的方法。这是我目前的代码(一个简单的例子):

@IBOutlet weak var barChartView: BarChartView!

var entries = [ChartDataEntry]()
entries.append(BarChartDataEntry(x: 1.0, yValues: [1.0], label: "Monday"))
entries.append(BarChartDataEntry(x: 2.0, yValues: [4.0], label: "Tuesday"))
    
let charDataSet = BarChartDataSet(values: entries, label: "legend")
let charData = BarChartData(dataSets: [charDataSet])
barChartView.data = charData

结果如下:

但我无法在出现 1.04、1.12、1.20... 值的位置放置 MondayTuesday 值。此外,我无法在 BarChartData 函数上添加标签(如 Android)。

我应该在哪里添加星期一和星期二的值以显示在每列的上方?

提前致谢!

days = ["Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"]
let daysValues = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0, 4.0]

setChart(days, values: daysValues)

var dataEntries: [BarChartDataEntry] = []

for i in 0..<dataPoints.count {
    let dataEntry = BarChartDataEntry(value: values[i], xIndex: i)
    dataEntries.append(dataEntry)
}

let chartDataSet = BarChartDataSet(yVals: dataEntries, label: "Days Value")
let chartData = BarChartData(xVals: days, dataSet: chartDataSet)
barChartView.data = chartData

我从 https://www.appcoda.com/ios-charts-api-tutorial/ 那里得到了这个答案:您可以参考更多选项和详细说明。

如果您查看在以下 link 中找到的答案,您会发现有人获得了新的 Swift 2.3 版图表,允许在 x- 上使用字符串标签轴:

您表示您正在使用 Swift 3.0,但造成此问题的修订后的 BarChartData() 函数语法在 2.3 和 3.0 之间看起来是相同的,因此似乎适用相同的解决方案。

编辑

刚刚测试,答案可以在Swift 3.

中实现