Я пытаюсь построить два набора данных на одной диаграмме, используя графическую библиотеку Jawbone для iOS. Вот данные для даты (ось х), уровень активности и порога:Как создать и настроить две строки с JBLineChart в iOS?
var activityChartLegend = ["11-14", "11-15", "11-16", "11-17", "11-18", "11-19", "11-20"]
var activityChartData = [88, 81, 69, 77, 70, 89, 90]
var activityThreshold = [80, 80, 80, 80, 80, 80, 80]
Я успешно построена первая линия для activityChartData. Однако я смущен тем, как построить вторую строку для ActivityThreshold. Документация ограничена, поэтому я не уверен, как построить эту вторую строку. В следующем коде я вернул количество строк как «2», но я не понимаю, как построить обе строки в следующих функциях.
func numberOfLines(in lineChartView: JBLineChartView!) -> UInt {
return 2
}
func lineChartView(_ lineChartView: JBLineChartView!, numberOfVerticalValuesAtLineIndex lineIndex: UInt) -> UInt {
if (lineIndex == 0) {
return UInt(activityChartData.count)
}
return 0
}
func lineChartView(_ lineChartView: JBLineChartView!, verticalValueForHorizontalIndex horizontalIndex: UInt, atLineIndex lineIndex: UInt) -> CGFloat {
if (lineIndex == 0) {
return CGFloat(activityChartData[Int(horizontalIndex)])
}
return 0
}
Кроме того, я отформатировал первую строку со следующим кодом, но не понимаю, как форматировать другую линию, когда он будет добавлен к просмотру диаграммы:
func lineChartView(_ lineChartView: JBLineChartView!, showsDotsForLineAtLineIndex lineIndex: UInt) -> Bool {
return true // False = do not show the dots
}
func lineChartView(_ lineChartView: JBLineChartView!, dotRadiusForDotAtHorizontalIndex horizontalIndex: UInt, atLineIndex lineIndex: UInt) -> CGFloat {
return CGFloat(6)
}
func lineChartView(_ lineChartView: JBLineChartView!, colorForDotAtHorizontalIndex horizontalIndex: UInt, atLineIndex lineIndex: UInt) -> UIColor! {
return UIColor.lightGray
}
func lineChartView(_ lineChartView: JBLineChartView!, smoothLineAtLineIndex lineIndex: UInt) -> Bool {
return true
}
func lineChartView(_ lineChartView: JBLineChartView!, didSelectLineAt lineIndex: UInt, horizontalIndex: UInt) {
if (lineIndex == 0){
let data = activityChartData[Int(horizontalIndex)]
let key = activityChartLegend[Int(horizontalIndex)]
activityLabel.text = "Number of steps on \(key): \(data)"
}
}
Я довольно новые для кодирования в iOS, и они нашли ограниченную документацию по этому вопросу. Спасибо за любую помощь, которую вы можете предоставить!