2013-06-10 6 views
2

차트 엔진의 누적 판매 막대 차트 샘플 (http://www.achartengine.org/content/demo.html)을 고려하십시오. 이제는 2007 년 11 월에 2008 년보다 많은 판매 단위를 판매 한 것으로 보입니다.이를 차트에 표시하려면 '섹션'이 쌓이는 순서를 변경해야합니다. 2008 년은 먼저 (진한 파란색), 2007 년 (연한 파란색)은 위에 겹쳐 져야합니다.누적 막 대형 차트 : 막 대형 막대 하나의 누적 열 순서 변경

어떻게 achartengine에서이 효과를 얻으려면 어떻게해야합니까? 내가 보는 방법에 따라 각각의 막대에 대해 Renderer을 제어 할 수 없습니다. Renderer은 전체적으로 Series에 적용됩니다. 따라서 원하는 순서대로 Dataset을 제공하면 2007 년의 열만 표시됩니다 (값이 낮은 2008 년 값이 먼저 제공되므로 2007에서 그 값을 뺍니다).

+0

범프! 이 작업을 수행하는 방법에 대한 아이디어가 있습니까? – curioustechizen

답변

2

당신이 말했듯이 각 차트 값 (막대)에 대한 렌더링을 제어 할 수 없습니다. 누적 막 대형 차트의 목적을 무효화합니다.

2008 년 매출이 2007 년 같은 달에 비해 높았다면 바 (bar)가 낮아지고 (2007) 짧을 것이고 높을수록 (2008) 길어질 것입니다.

저는 누적 가로 막 대형 차트를 잘못 사용한다고 생각합니다. 연간 월별 판매액을 비교하려면 예를 들어를 사용해야합니다. 즉, "평균 온도"를 보여주는 선 차트. 매월 판매 차이를 쉽게 볼 수 있습니다. 누적 판매량을 기준으로 삼으려면 첫 번째 두 시리즈의 합계로 세 번째 시리즈를 추가 할 수 있습니다.

UPDATE

아니면 정확히 판매의 차이를 같이 차트 # 6 ("최근 2 년 월별 판매")를 사용할 수 있습니다.

업데이트 2

당신이 얻고 자하는 것은 즉 매출 증가가 매출 감소와 함께 하나의 아래로 일년에 내림차순으로 정렬 각 막대 부분이다. 나는 rendering의 간단한 변경으로 충분할 것입니다. 이렇게하려면 계열 값을 렌더링하기 전에 정렬 할 SortedRangeStackedBarChart을 만들어야합니다.

public class SortedRangeStackedBarChart 
    extends org.achartengine.chart.RangeBarChart { 

    void drawSeries(...) { 
    ... 
    } 
}  
+1

저는 실제로 이것을 판매 데이터로 사용하지 않고 있습니다. "스택 된 판매 막대 차트"는 사용 사례와 매우 비슷하므로 설명이되었습니다. 도움이된다면, 누적 막 대형 차트는 사용자 프로필의 주간 일정을 나타냅니다 (전화 침묵, 시끄 럽, 밤 등 프로필을 생각하십시오). 나는 Y 축, 요일의 시간을 X로 표시합니다. 각 막대는 5 개의 섹션으로 나뉘며 각 섹션은 프로파일이 활성화 된 시간을 나타냅니다. 사용자는 임의의 순서로 프로파일을 설정할 수 있기 때문에 섹션을 재정렬 할 수 있기를 원합니다. 'SortedRangeStackedBarChart' 구현에 대한 당신의 요지를 봅니다. 나는 논평하기 전에 조금 파헤쳐 야 할 것이다. – curioustechizen

+0

좋아요, 저는 코드를 파고 들었고'RangeStackedBarChart' 자체가 사용 된 곳을 찾을 수 없었습니다. 당신의 아이디어는 여전히 'BarChart'를 확장함으로써 적용될 수 있지만 복잡성은 금지되어 있습니다. 전체 코드는 시리즈와 색상 사이의 대칭을 가정합니다. – curioustechizen

+0

너무 나쁨. 다른 차트 라이브러리 (androidplot, chartdroid)를 사용해 보셨습니까? – Cebence

관련 문제