就像 iOS 8 上的 Health 应用程序一样,当 X 轴标签仍然存在时,不会显示空/空数据点。使用iOS-Charts作为我项目的图表库是否可以实现相同的效果?
问问题
3597 次
5 回答
5
你不应该传递一个 nil,它不接受一个 nil 并且 Xcode 会警告它。你应该做的,就是根本不通过它。
您不必为每个 x 索引传递一个 y 值。您只需要确保 y 值是根据 x 索引排序的。
于 2015-06-11T12:36:43.267 回答
1
它可以使用 iOS-Charts 来实现。我目前正在制作一个需要各种多折线图、多条形图和折线图的项目。即使我有空值 X 轴标签仍然存在。你有什么疑问可以问我。
于 2015-05-29T06:37:18.957 回答
0
这是我根据 daniel.gindi 的回答编写的一个函数(我为 values 数组中为空的条目传递了 NaN):
func populateLineChartView(lineChartView: LineChartView, labels: [String], values: [Float]) {
var dataEntries: [ChartDataEntry] = []
for i in 0..<labels.count {
if !values[i].isNaN {
let dataEntry = ChartDataEntry(value: Double(values[i]), xIndex: i)
dataEntries.append(dataEntry)
}
}
let lineChartDataSet = LineChartDataSet(yVals: dataEntries, label: "Label")
let lineChartData = LineChartData(xVals: labels, dataSet: lineChartDataSet)
lineChartView.data = lineChartData
}
于 2016-05-16T09:11:18.533 回答
0
您可以使用轴最大值,因此即使您没有该事件的 ChartDataEntry,它仍然会显示
chartView.xAxis.axisMaximum = 60
chartView.xAxis.axisMaximum = 90
于 2021-03-11T21:42:17.830 回答
0
丹尼尔提到的最简单的答案是不传递 y 值。最初我也很困惑,因为所有函数都需要 x 和 y。这种方法是我做的
var dataEntries = [ChartDataEntry]()
for (iterating a source array){
let entry = ChartDataEntry()
if (some condition to check yValue exists) {
entry.x = xValue
entry.y = yValue
}
else
{
entry.x = xValue
}
dataEntries.append(entry)
}
于 2021-11-12T07:11:46.213 回答