首页 文章

Android实时绘图

提问于
浏览
3

我正在使用achartengine构建一个android实时加速度计绘图应用程序 . 我已经做了 a lot 研究来解决我在下面提到的问题,但找不到任何有效的解决方案 .

案例是这样的:我正在收集加速度计值并填充三个XYSeries对象(每个轴一个) . 我使用XYSeries对象绘制具有三个时间序列的图形 . 随着时间的推移,我想让图表实时滚动 . 所以我在活动中使用不同的线程来更新图形,我正在更新 X-axis 然后我正在调用

view_eeg1.repaint();

其中 view_eeg1 的类型为 GraphicalView

但是,当我每秒调用 repaint 方法超过3或4次时 GC_CONCURRENT 开始 . In this thread Dan正在讨论类似问题,但我无法使其顺利运行 .

此外,即使我忽略 GC_CONCURRENT 警告消息并尝试使用应用程序,当我移动设备 a lot 时,图表变得非常拥挤,应用程序崩溃 .

那么,这里的主要问题是,当采样和刷新率变高时,如何使用achartengine进行实时绘图?

我希望我能详细描述这个问题,如果您需要更多信息,请告诉我 .

1 回答

  • 1

    一些可能有用的建议:

    • 您可以重新绘制已知使用重绘(左,上,右,下)修改的图形部分,其中参数在屏幕上定义必须重绘的矩形 .

    • 它可能每秒仅重画一次左右 .

    • 这可能有助于删除一些旧值 . 你肯定不希望系列中有几千个值 .

相关问题