ios - SwiftUI使用Charts创建RadarChart并希望实时更新RadarChartDataEntry

标签 ios swift swiftui

是否可以使用iOS图表https://github.com/danielgindi/Charts实时编辑Radar Charts的数据条目?

我从一个带有所有零的新图表开始:

var newRadarDataSet = RadarChartDataSet (
    entries: [
        RadarChartDataEntry(value: 0),
        RadarChartDataEntry(value: 0),
        RadarChartDataEntry(value: 0),
        RadarChartDataEntry(value: 0),
        RadarChartDataEntry(value: 0)
   ]
)

并且在应用程序运行时,我想根据输入来更新图表。

能做到吗?

当我尝试像这样更改条目时:
self.newRadarDataSet.entries[0] = RadarChartDataEntry(value: 10)

我收到以下错误:
Cannot assign through subscript: 'entries' setter is inaccessible
有谁知道如何解决这个问题?

最佳答案

这是可能的方法。经过Xcode 11.4测试

注意:replaceEntries自动通知有关更改,因此图表将按预期更新。

demo

newRadarDataSet.replaceEntries(newRadarDataSet.entries.indices.map {
    $0 == 0 ? RadarChartDataEntry(value: 10) : newRadarDataSet.entries[$0]
})

关于ios - SwiftUI使用Charts创建RadarChart并希望实时更新RadarChartDataEntry,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61166689/

相关文章:

ios - 从 AppDelegate、Swift 导航到 TabBarController 内的特定 View Controller

ios - 将 TabBar 添加到现有应用程序的最简单方法

ios - 在 Jenkins 上使用 faSTLane 构建失败失败

swift - 使用 Swift 和 XCTest 等到对象在屏幕上不可见

swift - 如何在 ForEach SwiftUI 中使用核心数据关系

ios - 从当前 View Controller 打开相册(UIImagePickerController)

ios - UINavigationBar 标题不水平居中

objective-c - 如何在 Storyboard XCode 中使用现有 NSView 设置 NSScrollview 的内容

ios - 在应用程序关闭时使用 SwiftUI 处理传入的自定义 URL 类型

ios - 在 swiftUI 2 中将 MapMarker 添加到 MapKit