2016-02-06 1 views
1

У меня возникли проблемы с MPAndroidChart. Я добавляю данные температуры и влажности к диаграмме, но всегда отображает «нет доступных данных диаграммы». Кто-нибудь здесь, кто может видеть, где моя ошибка? Я был бы супер благодарен!MPAndroidchart не возвращает диаграмму Имеющиеся данные

//Create Data 

       //set size of data 
       int size = list.size(); 
       if (size > 24){ size = 24;} 

       //create lists form temp and hum 
       ArrayList<Entry> temps = new ArrayList<Entry>(); 
       ArrayList<Entry> hums = new ArrayList<Entry>(); 


       //fill list temp with values 
       for (int i = 0; i < size; i++){ 
        Entry value = new Entry(Math.round(list.get(list.size()-size + i).temp), (size-i)); 
        temps.add(value); 
       } 

       //fill list hum with values 
       for (int i = 0; i < size; i++){ 
        Entry value = new Entry(Math.round(list.get(list.size()-size + i).hum), (size-i)); 
        hums.add(value); 
       } 

       //other views on screen 
       date.setText(dateString); 
       time.setText(timeString); 
       temp.setText(tempString); 
       hum.setText(humString); 


       //adding Data and description to array 
       LineDataSet setTemp = new LineDataSet(temps, "Temperature"); 
       setTemp.setAxisDependency(YAxis.AxisDependency.LEFT); 
       LineDataSet setHum = new LineDataSet(hums, "Humidity"); 
       setHum.setAxisDependency(YAxis.AxisDependency.LEFT); 

       //adding Arrays to DataSet 
       ArrayList<ILineDataSet> dataSets = new ArrayList<ILineDataSet>(); 
       dataSets.add(setTemp); 
       dataSets.add(setHum); 
       ArrayList<String> xVals = new ArrayList<String>(); 

       //Adding x values of range size 
       for (int i = 0; i < size; i++){ 
        xVals.add(String.valueOf(i)); 
       } 

       //add Data and create chart 
       LineData data = new LineData(xVals, dataSets); 
       chart.setData(data); 
       chart.invalidate(); 

      } 
     }); 
+0

Попробуйте изменить '(size-i)' to 'i' в конструкторе' Entry'. Дайте мне знать, если это что-то изменит. –

+0

Hello Philipp, Спасибо, что посмотрели мою проблему. К сожалению, это не решило проблему. Я должен где-то неправильно использовать код. –

+0

Моя лучшая догадка заключается в том, что она имеет отношение к вашей переменной 'size'. Вы пытались удалить его и посмотреть, что произойдет? –

ответ

0

Я смотрел этот пост долгое время. Единственное, что я могу думать о том, эта линия:

Math.round(list.get(list.size()-size + i).hum 

Что это .hum? Может ли он генерировать неподдерживаемый тип для входа? Резолюция по этому вопросу меня так сильно интригует, поскольку г-н Фил Дж. Еще не нашел ответа.