이번 시간에는 차트 안의 데이터(라인)를 꾸미는 방법에 대하여 알아보겠습니다.
이전 포스팅에 이어서 하겠습니다.
이전 포스팅은 아래 링크를 들어가시면 됩니다.
2022.05.02 - [안드로이드] - [안드로이드] LineChart 만드는 방법 part4 범례(Legend) 변경하는 방법
색상 res -> values -> colors.xml
<color name="color1">#FF6200EE</color>
<color name="color2">#E91E63</color>
<color name="color3">#2196F3</color>
- 설명 -
1. setLineWidth 라인 굵기
2. setColor 라인 색상
3. setDrawCircles 원 표시 유무
4. setDrawCircleHole 원 홀 여부
5. setCircleColor 원 색상
6. setCircleHoleColor 원 홀 색상
7. setCircleRadius 원 반지름
8. setCircleHoleRadius 원 홀 반지름
9. setValueTextSize 데이터 숫자 크기
10. setValueTextColor 데이터 숫자 색상
11. enableDashedLine 라인 대쉬 형태
12. setColors 라인 별 색상 설정
public class MainActivity extends AppCompatActivity{
LineChart lineChart;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//초기화
lineChart = findViewById(R.id.line_chart);
//1. 데이터셋에 데이터 넣기
LineDataSet lineDataSet1 = new LineDataSet(data1(), "Data Set1");
LineDataSet lineDataSet2 = new LineDataSet(data2(), "Data Set2");
//2. 리스트에 데이터셋 추가
ArrayList<ILineDataSet> dataSets = new ArrayList<>();
dataSets.add(lineDataSet1);
dataSets.add(lineDataSet2);
/* 차트 커스텀 */
//라인 굵기
lineDataSet1.setLineWidth(4);
//라인 색상
lineDataSet1.setColor(Color.RED);
//데이터 원 표시 여부
lineDataSet1.setDrawCircles(true);
//데이터 원 안의 홀 여부( 디폴트 true)
lineDataSet1.setDrawCircleHole(true);
//데이터 원 색상
lineDataSet1.setCircleColor(Color.GRAY);
//데이터 원 홀 색상
lineDataSet1.setCircleHoleColor(Color.GREEN);
//데이터 원 반지름
lineDataSet1.setCircleRadius(10);
//데이터 원 홀 반지름
lineDataSet1.setCircleHoleRadius(5);
//데이터 숫자 크기
lineDataSet1.setValueTextSize(10);
//데이터 숫자 색상
lineDataSet1.setValueTextColor(Color.BLUE);
//라인 대쉬 형태로(끊김형태) 라인길이, 공간길이, 단계
lineDataSet1.enableDashedLine(5, 10
, 0);
//라인 별 색상 설정
int colorArray[] = {R.color.color1, R.color.color2
, R.color.color3};
lineDataSet1.setColors(colorArray,MainActivity.this);
//3. 라인데이터에 리스트 추가
LineData data = new LineData(dataSets);
//4. 차트에 라인데이터 추가
lineChart.setData(data);
//5. 차트 초기화
lineChart.invalidate();
}//onCreate
//데이터 생성
private ArrayList<Entry> data1(){
ArrayList<Entry> dataList = new ArrayList<>();
dataList.add(new Entry(0, 10));
dataList.add(new Entry(1, 20));
dataList.add(new Entry(2, 30));
dataList.add(new Entry(3, 40));
return dataList;
}
//데이터 생성
private ArrayList<Entry> data2(){
ArrayList<Entry> dataList = new ArrayList<>();
dataList.add(new Entry(0, 15));
dataList.add(new Entry(1, 25));
dataList.add(new Entry(3, 35));
dataList.add(new Entry(5, 45));
return dataList;
}
}//MainActivity
2022.04.19 - [안드로이드] - [안드로이드] 커스텀 달력 만드는 방법 part1 화면 구성
2022.03.20 - [안드로이드] - [안드로이드] ToDoList SQLite 만드는 방법 part1 - 화면과 DB
2022.03.02 - [안드로이드] - [안드로이드] SQLite RecyclerView 연락처 만드는 방법 part1 - 조회
[안드로이드] BarChart 만드는 방법 part1 - 기본 구현 (0) | 2022.05.05 |
---|---|
[안드로이드] LineChart 만드는 방법 part6 - 차트 X축 Y축 데이터 포맷 (0) | 2022.05.04 |
[안드로이드] LineChart 만드는 방법 part4 - 범례(Legend) 변경하는 방법 (0) | 2022.05.02 |
[안드로이드] LineChart 만드는 방법 part3 - 차트 스타일 변경 (0) | 2022.05.01 |
[안드로이드] LineChart 만드는 방법 part2 - 멀티 데이터 구현 (0) | 2022.04.30 |
댓글 영역