私のアプリは、グラフを描画するために必要なデータに応じて、Bluetoothを介してデバイスから継続的にデータを受信します。チャートの描画にachartengineが非常に役立つことがわかりました。今、私の質問は、achartengineを使用して動的グラフを作成する方法です。そうでない場合はどうすればよいですか
前もって感謝します。
私のアプリは、グラフを描画するために必要なデータに応じて、Bluetoothを介してデバイスから継続的にデータを受信します。チャートの描画にachartengineが非常に役立つことがわかりました。今、私の質問は、achartengineを使用して動的グラフを作成する方法です。そうでない場合はどうすればよいですか
前もって感謝します。
Bluetoothからの実際の入力ではなく、入力/データに乱数を使用しました。完全な作業プロジェクトはここにあります、誰かを助けるかもしれないと思いました。:)
乾杯。
したがって、AchartEngineは動的またはリアルタイム描画と呼ばれるものを管理しませんが、次のようにSerieに新しいデータを追加するときに、グラフを継続的に更新することでこれを行うことができます。
private GraphicalView mChartView;// that's your graph view declared before
if (mChartView != null) {
mChartView.repaint();// to refresh the graph
}
シリアル化ループ内、またはグラフを更新する必要がある場所にコードを作成します。
ただし、生成またはrepaint()する前に、前のグラフを削除する必要があるため、次のようにしてください。これは間違いなく役立ちます。
private GraphicalView mChartView;// that's your graph view declared before
if (mChartView != null) {
layoutr.removeView(mChartView);
mChartView.repaint();
layout.addView(mChartView);// to refresh the graph
}
エミュレータで動的グラフをテストする場合のアドバイスの1つは、エミュレータが正しく応答しない場合があるため、実際のデバイスでテストしてみてください。貴重な時間が無駄になります。
private GraphicalView mChartView;// that's your graph view declared before
if (mChartView != null) {
layout.removeView(mChartView);//Delete the old graph
mChartView.repaint();// to refresh the graph
}
現在のGraphicalViewがレイアウトから削除されて再度追加されない限り、グラフは更新されません。それ以外の場合は、「GraphicalView」を含むレイアウトをタッチするだけで、グラフを更新できます(onTouchコールバックを介して)。