2012-02-04 2 views
1

저는 안드로이드 (API 레벨 11) 용 앱을 개발하고 있습니다.이 앱은 장치에서 몇 개의 데이터를 하나의 청크로 읽습니다. 나는 데이터를 플롯하고 싶다. x 축은 초 단위로, y 축은 값이다. 이 프로그램의 요구 사항 중 하나는 스크롤없이 한 화면에 한 시간 동안의 관찰 결과를 표시해야하므로 화면에 3600 개의 점을 맞추어야한다는 것입니다. 점들이 겹치는 것은 중요하지 않습니다.안드로이드에서 빨리 그려야합니다.

데이터를 충분히 빠르게 플로팅하는 방법을 모르겠습니다.

나는 androidplot을 사용하고 있으며, androidplot이 동일한 포인트를 반복해서 다시 그리며 약 30 분이면 상황이 실제로 느려집니다.

(소스를 자유롭게 다운로드 할 수 있으므로) 약간의 변경을 시도했지만 헛된 것이 었습니다.

어떻게 든 이전에 그려진 이미지를 캐시하고 새 포인트 만 추가 할 수 있습니까?

Android에 WinAPI BitBlt() 기능이 있나요?

+0

3600 데이터 포인트를 렌더링하기에 충분한 화면이 휴대 전화 화면에 없으므로 불가능합니다. 데이터 포인트가 중복 될 수 있습니다. – JPM

답변

0

AndroidPlot에 대한 최적화 작업을 수행했으며 최근에 내 코드를 보내 드리겠습니다. 하지만 요점을 말하기 시작할 수 있습니다. 원할 경우 작업 할 수 있습니다. 거대한 데이터 세트를 그릴 때 기본적으로 가장 느린 부분은 XYSerie를 반복하는 것입니다. 원래 코드는 for 문을 반복합니다. x와 y 값에 대한 반복자를 도입했습니다. 2k 포인트 데이터 세트로 3 ~ 4 배 빠름을 의미합니다. 희망도 도움이 될 수 있습니다

관련 문제