2016-08-02 4 views
0

У меня есть запись данных в 12 бар, и мне нужно сначала отобразить только 5 бар, что означает, что остальная часть панели должна быть видимой на прокрутке. Да, в BarGraph я могу это достичь. Но на диаграмме Combine этот метод не работает. Это предназначено.? Я что-то пропустил.MPAndroidChart: setMaxVisibleValueCount (int count) не работает в комбинированной диаграмме

ответ

1

Трудно видеть без примера, но есть несколько потенциальных проблем, которые я испытал. Примечание. Я использовал только линейные графики, но это может быть аналогичная проблема?

Сначала убедитесь, что вы устанавливаете график setVisibleXRangeMaximum после, устанавливая данные. Согласно документации:

Обратите внимание, что все методы, изменяющие область просмотра, должны быть вызваны на диаграмме после установки данных.

Например, с помощью следующего кода я получаю то, что я хочу:

private CombinedChart mChart; 
.... 
mChart.setData(data); 
// NB > 100 entries 
mChart.setVisibleXRangeMaximum(10); 

enter image description here

Во-вторых, в моем приложении у меня есть один график, который может отображать различные наборы данных, где у меня есть отображается максимум 10 записей (в соответствии с приведенным выше кодом). Когда я переключаюсь между chartA (100 записей), диаграммами ChartB (6 записей) и chartC (3 записи), B & C отображает сильно увеличенное изображение. Если я исправлю увеличение в B или C, а не на карте, то оба индикатора B & C будут отображаться соответственно. Как только я снова отображу chartA, масштабирование обоих B & C запутывается.

Так что это снова может быть вашей проблемой, поскольку «не работает».

Чтобы исправить это, когда число точек данных для диаграммы ниже setVisibleXRangeMaximum, удалите ограничения, например:

mChart.setData(data); 
if (data.getEntryCount() > 10) { 
    mChart.setVisibleXRangeMaximum(10); 
} 
else { 
    mChart.fitScreen(); 
} 

Я не уверен, но если это известная проблема в mpandroidchart еще, но Я буду исследовать.