在 SwiftUI 應用程式中,我試圖將 Y 值陣列傳遞給 Swift 圖表框架以繪制折線圖。我想根據 Y 資料的長度或計數創建 X 值。我嘗試了下面顯示的方法,但它不起作用,因為圖表希望將資料作為結構陣列。有沒有辦法將陣列直接傳遞給圖表框架?
import SwiftUI
import Charts
struct ContentView: View {
let ydata = [1, 4.5, 3, 6, 7, 5.2, 9, 12.5]
let xdata = Array(0..<ydata.count)
let data = [xdata, ydata]
var body: some View {
Chart(data) {
LineMark(
x: .value("X values", $0),
y: .value("Y values", $1)
)
}
}
}
uj5u.com熱心網友回復:
您可以使用元組陣列,這里我為資料使用計算屬性
var data: [(Int, Double)] {
Array(zip(Array(0..<ydata.count), ydata))
}
使用元組時,我們需要告訴Chartid 是什么,所以使用data有點不同
var body: some View {
Chart(data, id: \.0) { tuple in
LineMark(
x: .value("X values", tuple.0),
y: .value("Y values", tuple.1)
)
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/536728.html
標籤:迅速迅捷图表
下一篇:如何測驗可選結構的協議一致性
