Objective-C,Core-Plot 实时图对比 CPU

Objective-C, Core-Plot Real Time Graph vs CPU

我一直致力于在 OS X 上将实时 Core Plot 图表实现到我的应用程序中。令我沮丧的是,我注意到一个相当重要的问题。一旦该行到达 X 轴的末端并开始滚动以跟上该行,CPU 负载将不间断地达到 30-35%。

我想在继续之前我最好回头看看我的代码是否犯了某种类型的错误导致 CPU 像那样飙升。我没有注意到任何异常,我尝试调整帧率和更新频率,但没有成功。我决定回到他们包含的实时示例项目,它对 CPU.

具有相同的效果

Is there anything I can do about this, or is that just the nature of real time graphing on OS X?

. .

前 50 帧一切都很好(用带箭头的线表示),但一旦到了最后,情况就会变得更糟。

旁注: 我注意到 Swift 在 Playground 中绘制图形,尽管它显然不是实时的(而且我使用的是 Obj-C),但它看起来非常清晰。 Swift 绘图功能是否仅在 playgrounds 中可用,或者是否有办法将其实现到项目中?我之所以提到这个,是因为我希望尽快找到有效的方法。

这是 Core Plot 的预期行为。一旦图表开始滚动,它必须重新绘制绘图、两个轴和每个动画帧的所有网格线。您可以通过减少网格线的数量 and/or 轴刻度线来减少绘图负载。

playground 图表是 playground 环境的私有部分。