如何在 iOS 图表中仅绘制某些值?
How can I draw only certain values in iOS charts?
我正在使用 swift charts,想知道是否可以设置在折线图上绘制哪些值。
在我的图表中,我跳过了第一个和最后一个值,因为它们会被屏幕截掉。这可能吗?
您可以尝试使用自己的值格式化程序来隐藏数据条目的某些值。
例如定义值格式化程序 class:
class MyValueFormatter: IValueFormatter {
var hiddenEntries: [ChartDataEntry?] = []
func stringForValue(_ value: Double, entry: ChartDataEntry, dataSetIndex: Int, viewPortHandler: ViewPortHandler?) -> String {
return hiddenEntries.contains(entry) ? "" : "\(value)"
}
}
然后在您的代码中使用此格式化程序来隐藏第一个和最后一个值:
let myValueFormatter = MyValueFormatter()
myValueFormatter.hiddenEntries = [dataSet.entryForIndex(0), dataSet.entryForIndex(dataSet.entryCount-1)]
dataSet.valueFormatter = myValueFormatter
我正在使用 swift charts,想知道是否可以设置在折线图上绘制哪些值。
在我的图表中,我跳过了第一个和最后一个值,因为它们会被屏幕截掉。这可能吗?
您可以尝试使用自己的值格式化程序来隐藏数据条目的某些值。
例如定义值格式化程序 class:
class MyValueFormatter: IValueFormatter {
var hiddenEntries: [ChartDataEntry?] = []
func stringForValue(_ value: Double, entry: ChartDataEntry, dataSetIndex: Int, viewPortHandler: ViewPortHandler?) -> String {
return hiddenEntries.contains(entry) ? "" : "\(value)"
}
}
然后在您的代码中使用此格式化程序来隐藏第一个和最后一个值:
let myValueFormatter = MyValueFormatter()
myValueFormatter.hiddenEntries = [dataSet.entryForIndex(0), dataSet.entryForIndex(dataSet.entryCount-1)]
dataSet.valueFormatter = myValueFormatter