내 응용 프로그램에는 막 대형 차트의 각 막대에 레이블이 있어야합니다. MPAndroidChart를 사용하여이 작업을 수행 할 수있는 방법이 있습니까? 프로젝트 wiki/javadocs에서이 작업을 수행 할 수있는 방법을 찾지 못했습니다.MPAndroidChart - 막대 차트에 레이블 추가
내가 할 수있는 방법이 없다면 다른 소프트웨어가 있습니까?
내 응용 프로그램에는 막 대형 차트의 각 막대에 레이블이 있어야합니다. MPAndroidChart를 사용하여이 작업을 수행 할 수있는 방법이 있습니까? 프로젝트 wiki/javadocs에서이 작업을 수행 할 수있는 방법을 찾지 못했습니다.MPAndroidChart - 막대 차트에 레이블 추가
내가 할 수있는 방법이 없다면 다른 소프트웨어가 있습니까?
업데이트 응답 (MPAndroidChart의 V3.0.1)
는 일반적으로 사용되는 기능이기 때문에, 라이브러리의 V3.0.1이 목적을 위해 정확하게 IndexAxisValueFormatter
클래스를 추가, 그래서 그냥 한 줄의 지금 코드 :
mBarChart.getXAxis().setValueFormatter(new IndexAxisValueFormatter(labels));
아래에 여전히 적용되는 원래의 대답에서
ProTip.
원래 대답 (MPAndroidChart의 v3.0.0) 라이브러리 v3.0.0로
바 레이블을 설정하는 직접적인 방법이 없지만, ValueFormatter
인터페이스를 사용하는 대신 괜찮은 해결 방법이있다.
과 같은 새로운 포매터 만들기 :
public class LabelFormatter implements IAxisValueFormatter {
private final String[] mLabels;
public LabelFormatter(String[] labels) {
mLabels = labels;
}
@Override
public String getFormattedValue(float value, AxisBase axis) {
return mLabels[(int) value];
}
}
이 그런 다음 X 축이 포매터를 설정을 (이미 String[]
이 레이블을 포함 만든 가정) :
mBarChart.getXAxis().setValueFormatter(new LabelFormatter(labels));
ProTip : 막 대형 차트를 확대 할 때 나타나는 추가 레이블을 제거하려면 세분성 기능을 사용할 수 있습니다.
XAxis xAxis = mBarChart.getXAxis();
xAxis.setGranularity(1f);
xAxis.setGranularityEnabled(true);
이 라인 이동 코드
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
를 추가하여 위의 열 레이블을 설정할 수 있습니다 당신은 나에게 proTip 내 하루가 저장 x 축 –
당신 레이블 여러 막대 그래프를 표시하는 방법에 대한 몇 가지 괜찮은 소스 코드를 제공 할 수 있습니다. 감사! @ TR4Android –
답변을 최신 상태로 유지해 주셔서 감사합니다. 이 질문은 많은 질문을 받으면 여기에서 중복을 리디렉션해야합니다. –