我有一个数据集,我正在绘制一个CPTScatterPlot。我还使用核心图形(CGContextStrokePath,…)显示一系列线条。我想把这组线和散点图联系起来,这样它们就可以一起缩放和平移。下面是参考图片的链接。
http://oi57.tinypic.com/2pq2bdx.jpg我能想到有两种可能的方法:
- 为一组线创建一个CPTLayerAnnotation并添加到绘图中。我已经这样做了,但是我无法链接交互行为。
- 使每一行都成为CPTScatterPlot对象,并绘制在同一图形上。这是可行的,但就创建的对象数量而言,似乎有些过度。
你有什么建议吗?谢谢。
您可以使用散点图来绘制线条,但是每种颜色都需要一条。通过将数据值为[NSNull null]
或nil
的线段分开,可以用单个散点图绘制多个线段。
使用条形图来绘制线条是最简单的。您可以使用-barLineStyleForBarPlot:recordIndex:
和/或-barFillForBarPlot:recordIndex:
数据源方法为每个柱提供不同的线条样式和填充。条形图可以使用与散点图相同的图空间,也可以创建第二个图空间,并通过图空间委托将一个图空间中的变化镜像到另一个图空间。如果您希望条形图之间的间距(由条形图空间的xRange
控制)随散点图而改变,则使用第二个条形图空间,而不是条形图的底部或顶部。