如何向 Swift 中的图表添加注释?
How do I add annotations to a chart in Swift?
我正在使用 iOS 图表 (https://github.com/danielgindi/Charts) 来可视化一些数据集。我希望能够为图表的特定点添加注释。
我最初是使用 SciChart 来完成这项工作的,因为它们具有注释功能,但由于预算限制不得不切换到图表。一直无法弄清楚如何使用图表复制项目的注释部分。
例如,如果我要将 "test annotation" 添加到点 [1,1],文本将被放置到图表上的点 [1,1]。
简而言之:我想弄清楚如何创建一个包含文本的注释对象并将其放置在图表上的指定点。
感谢您的帮助!
经过一番挖掘,我找到了解决方案。我想我会分享它以防对其他人有帮助!
我将 GitHub (https://github.com/danielgindi/Charts/blob/master/ChartsDemo-iOS/Swift/Components/BalloonMarker.swift) 上的图表文件中包含的气球标记 class 添加到我的项目中。
然后我进入 class 并修改了一段代码:
open override func refreshContent(entry: ChartDataEntry, highlight: Highlight)
{
setLabel(String(entry.y))
}
到
open override func refreshContent(entry: ChartDataEntry, highlight: Highlight)
{
let des = entry.data as! String
let annot = "X: " + String(entry.x) + "\n Y:" + String(entry.y) + "\n Annotation: " + des
setLabel(annot)
}
不同之处在于,原始代码只有标记显示 Y 坐标,而我修改后的代码片段现在显示了 ChartDataEntry 对象的 X、Y 和数据字段。
完成后,我在图表上进行了注释,
长话短说:
- 为 ChartDataEntry 对象设置字段
- 修改BMclass显示相关字段
我正在使用 iOS 图表 (https://github.com/danielgindi/Charts) 来可视化一些数据集。我希望能够为图表的特定点添加注释。
我最初是使用 SciChart 来完成这项工作的,因为它们具有注释功能,但由于预算限制不得不切换到图表。一直无法弄清楚如何使用图表复制项目的注释部分。
例如,如果我要将 "test annotation" 添加到点 [1,1],文本将被放置到图表上的点 [1,1]。
简而言之:我想弄清楚如何创建一个包含文本的注释对象并将其放置在图表上的指定点。
感谢您的帮助!
经过一番挖掘,我找到了解决方案。我想我会分享它以防对其他人有帮助!
我将 GitHub (https://github.com/danielgindi/Charts/blob/master/ChartsDemo-iOS/Swift/Components/BalloonMarker.swift) 上的图表文件中包含的气球标记 class 添加到我的项目中。
然后我进入 class 并修改了一段代码:
open override func refreshContent(entry: ChartDataEntry, highlight: Highlight)
{
setLabel(String(entry.y))
}
到
open override func refreshContent(entry: ChartDataEntry, highlight: Highlight)
{
let des = entry.data as! String
let annot = "X: " + String(entry.x) + "\n Y:" + String(entry.y) + "\n Annotation: " + des
setLabel(annot)
}
不同之处在于,原始代码只有标记显示 Y 坐标,而我修改后的代码片段现在显示了 ChartDataEntry 对象的 X、Y 和数据字段。
完成后,我在图表上进行了注释,
长话短说:
- 为 ChartDataEntry 对象设置字段
- 修改BMclass显示相关字段