MPAndroidChart - неправильные значения в методе getFormattedValue. Откуда они берутся?
Я работаю с проектом, который использует библиотеку MPAndroidChart, которая сводит меня с ума, я хочу удалить его.
Проблема в том, что я создал собственный ValueFormatter, и я не могу понять, откуда эти значения, все они не правы.
private void setData() {
for (int i = 1; i <= 10; i++) {
Entry entry = new Entry(i, i);
values.add(entry);
}
IAxisValueFormatter valueFormatter = new myValueFormatter();
XAxis xAxis = mChart.getXAxis();
xAxis.setValueFormatter(valueFormatter);
LineDataSet set1 = new LineDataSet(values, "DataSet 1");
ArrayList<ILineDataSet> dataSets = new ArrayList<ILineDataSet>();
dataSets.add(set1); // add the datasets
// create a data object with the datasets
LineData data = new LineData(dataSets);
// set data
mChart.setData(data);
}
Пользовательский класс форматирования: у меня есть массив, который имеет значения 1,2,3,4,5,6,7,8,9,10, но я получаю значения 2,4,6,8,10 в методе getFormattedValue.
public classmyValueFormatter implements IAxisValueFormatter {
@Override
public String getFormattedValue(float value, AxisBase axis) {
System.out.println(value); //Here I get odd values where they come from I don't know.
}
}
1 ответ
Ну, в общем, так написана библиотека. Посмотрите здесь:
String label = mXAxis.getValueFormatter().getFormattedValue(mXAxis.mEntries[i / 2], mXAxis);
Намерение автора, вероятно, заключалось в том, чтобы увеличить расстояние между метками. Если вы считаете, что это ошибка, отправьте вопрос в репозиторий библиотеки на Github.