안녕하세요, 안드로이드 공부하는 학생입니다.
다름이아니라, 차트를 만들어보고싶어서 구글링해서 찾아보다가 오류가 나서 이렇게 질문올립니다..^^;
라이브러리는 achartengine-0.7.0.jar를 쓰고있습니다..
package com.example.sizetest;
import java.util.ArrayList;
import java.util.List;
import org.achartengine.ChartFactory;
import org.achartengine.GraphicalView;
import org.achartengine.model.CategorySeries;
import org.achartengine.model.XYMultipleSeriesDataset;
import org.achartengine.renderer.SimpleSeriesRenderer;
import org.achartengine.renderer.XYMultipleSeriesRenderer;
import android.app.Activity;
import android.graphics.Color;
import android.graphics.Paint.Align;
import android.os.Bundle;
import android.renderscript.Type;
import android.widget.LinearLayout;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//표시할 수치값
List<double[]> values = new ArrayList<double[]>();
//안드로이드폰 수치값들
values.add(new double[] { 10230,10300, 14240, 15244, 15900,
19200, 22030, 21200, 19500, 15500, 12600, 1000 });
//아이폰용 수치값들
values.add(new double[] {15230, 17300, 9240, 10540, 7900,
9200, 12030, 11200, 9500, 10500, 11600, 13500 });
/* 그래프 출력을 위한 그래픽 속성 지정객체 */
XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
//상단 표시 제목과 글자 크기
renderer.setChartTitle("유압 출력량");
renderer.setChartTitleTextSize(20);
//분류에 대한 이름
String[] titles = new String[] { "안드로이드폰" , "아이폰" };
//항목을 표시하는데 사용될 색상값
int[] colors = new int[] {Color.YELLOW, Color.BLUE};
//분류명 글자 크기 및 각 색상 지정
renderer.setLegendTextSize(15);
int length = colors.length;
for (int i= 0; i < length; i++){
SimpleSeriesRenderer r = new SimpleSeriesRenderer();
r.setColor(colors[i]);
renderer.addSeriesRenderer(r);
}
// X,Y축 항목이름과 글자 크기
renderer.setXTitle("월");
renderer.setYTitle("판매량");
renderer.setAxisTitleTextSize(12);
// 수치값 글자 크기
renderer.setLabelsTextSize(10);
// X축 최소,최대값
renderer.setXAxisMin(0.5);
renderer.setXAxisMax(12.5);
// Y축 최소,최대값
renderer.setYAxisMin(0);
renderer.setYAxisMax(24000);
// X,Y축 라인 색상
renderer.setAxesColor(Color.WHITE);
// 상단 제목, XY축 제목, 수치값의 글자 색상
renderer.setLabelsColor(Color.CYAN);
// X축의 표시 간격
renderer.setXLabels(12);
// Y축의 표시 간격
renderer.setXLabels(12);
// X,Y축 정렬 방향
renderer.setXLabelsAlign(Align.LEFT);
renderer.setYLabelsAlign(Align.LEFT);
//X,Y축 스크롤 여부 ON/OFF
renderer.setPanEnabled(false, false);
//ZOOM 기능 ON/OFF
renderer.setZoomEnabled(false, false);
// ZOOM 비율
renderer.setZoomRate(1.0f);
// 막대간 간격
renderer.setBarSpacing(0.5f);
//설정 정보 설정
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
for (int i = 0; i < titles.length; i++){
CategorySeries series = new CategorySeries(titles[i]);
double[] v = values.get(i);
int seriesLength = v.length;
for(int k = 0; k < seriesLength; k++)
{series.add(v[k]);
}
dataset.addSeries(series.toXYSeries());
}
//그래프 객체 생성
GraphicalView gv = ChartFactory.getBarChartView(this, dataset,
renderer, Type.DEFAULT);
//그래프를 LinearLayout에 추가
LinearLayout llBody = (LinearLayout) findViewById(R.id.imageView1);
llBody.addView(gv);
}
}
위의 붉은색 글씨부분에서 에러가 납니다...
DEFAULT를 분석할 수 없습니다.또는 필드가 아닙니다.
라고 나오는데요... 도무지 이유를 모르겠네요...ㅠ.ㅠ
관련 링크는 여기입니다... http://hoyanet.pe.kr/1978
답변기다리겠습니다... 감사합니다~^^
──────────────────────