我可以为Core Plot散点图的范围设置动画吗?

时间:2012-11-26 00:10:16

标签: ios animation core-plot

我在iOS应用程序中有一个Core Plot散点图,我用它来显示一些数据。当视图加载时,我计算绘图的理想范围以使其在屏幕上适合其数据。我允许用户缩放和平移,但包含一个按钮可将图形返回到理想范围。

按钮有效,范围也会发生变化,但变化可能会有点刺耳。由于突然的变化,一个人失去了他们对情节的心理“地图”。根据地图应用的需要,动画平移和缩放会更好。

我没有在Core Plot中看到任何允许动画的内容,但我可能错过了一些东西。有没有办法用Core Plot(或它的一个分支)或一个相当简单的方法来手动完成它?

2 个答案:

答案 0 :(得分:5)

如果有人现在对此感到疑惑,那么Eric的修复已经到位,您现在可以使用以下代码为范围设置动画:

CPTPlotRange *xRange = [CPTPlotRange 
                        plotRangeWithLocation:CPTDecimalFromDouble(location) 
                                       length:CPTDecimalFromDouble(length)];

[CPTAnimation animate:plotSpace // CPTPlotSpace *
             property:@"xRange"
             fromPlotRange:plotSpace.xRange
             toPlotRange:xRange
             duration:5.0
             withDelay:0
             animationCurve:CPTAnimationCurveCubicInOut
             delegate:nil];

答案 1 :(得分:1)

现在可用的最佳解决方案是使用计时器以小步长调整范围。我正在研究一个更通用的解决方案,但它还没有准备好包含在公共代码中。观看Core Plot issue #398上的状态,了解修补程序何时可用。