使用JAR或OpenGL绘制android Graph是否更好?

时间:2013-07-03 04:43:53

标签: android opengl-es achartengine androidplot

我试图绘制一个接近2000点的实时图,一次绘制一个点。这适用于JAR(achartengine,android plot)和OPENGL,但是图形绘制非常慢。请建议技巧提高绘图速度。

2 个答案:

答案 0 :(得分:1)

解决您要使用的平台

这个速度问题可以在两端进行权衡。

库(你称之为jar)方法最初会更快绘制,因为我假设它们在画布上绘制。我们使用这种方法在我们的应用程序上绘制一些复杂的图表这种方式简单直接。图表大多是静态的,有一些交互功能。

OpenGL方法最初渲染需要更长的时间,因为它需要首先加载GLView并在图表绘制之前启动OpenGL,这有时会非常耗时但加载完成后执行起来会更快绘制操作和花哨的功能,而不是jar方法。

最后归结为你想做的事情。如果您只想绘制图表并使用最新数据更新它我不会使用OpenGL,但如果您想添加炫酷缩放功能和平移等,您绝对可以使用OpenGl来执行这些操作。

您受图书馆的限制

关于库的问题是你只能改进实现它们的方式,例如检查不必要的for循环,确保你没有在图表上调用任何不必要的方法等。 (如果不显示某些代码,则无法真正帮助您改进)

我们并不准备依赖只会定期更新的源代码,因为这会导致错误长时间停留在您的系统中。所以我们编写了自己的图表类。它非常简单,如果您的图表仅用于绘制x轴和y轴的最新点,这是一种更好,轻量级的方法,您可以完全控制。当然,它比使用现有的库要多得多,但最终你可以控制它。

希望这可以让您了解要查看的内容

答案 1 :(得分:0)

"slow"你是什么意思?低fps率?你想达到哪个速度?

如果你真的想要更高的渲染速度,你只有一个认真的选择:用OpenGL编程。