我有一个使用Core Plot(v 1.5)创建的散点图。数据源是包含(x,y,value)的字典。我希望能够动态调整要绘制的(x,y)对的数量。但是,在我更改数据源中包含的(x,y)对的数量之后,我的graphHostingView不刷新散点图,直到我调整窗口大小。当我调整窗口大小时,会加载并绘制新值。我尝试了几种解决方案,包括:
[graph reloadData]
[scatterplotview setNeedsDisplay:YES]
[self.myScatterPlot.plotItem renderInView:self.myScatterPlot.hostingView withTheme:nil animated:NO withData:nil];
没有成功。任何人都可以建议一种方法,使我的散点图能够在值更改时动态更新或向我发送示例链接吗?提前致谢。干杯,特隆德
答案 0 :(得分:3)
有几种方法可以告诉Core Plot图表您有新数据可用:
-reloadData
:用新数据点替换所有绘图数据。在图表上调用此方法会导致图表中的所有绘图重新加载其数据。
-reloadDataInIndexRange:
:将给定索引范围内的绘图数据替换为新值,使得此范围之外的点不受影响。
-insertDataAtIndex:numberOfRecords:
:在给定索引处插入新数据点,根据需要将现有数据点移动到更高的索引。
-deleteDataInIndexRange:
:删除指定范围内的现有数据,并移动现有数据点以缩小差距。
"实时情节" Plot Gallery 示例应用程序中的演示使用这些方法来更新其数据。该演示使用计时器生成随机绘图数据,但您的新数据可以来自任何地方。