【发布时间】:2016-02-06 13:07:37
【问题描述】:
我在使用 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();
}
});
【问题讨论】:
-
尝试在
Entry构造函数中将(size-i)更改为i。让我知道这是否有任何改变。 -
您好 Philipp,感谢您查看我的问题。遗憾的是,这并没有解决问题。我一定是在某处使用了错误的代码。
-
我最好的猜测是它与您的
size变量有关。你试过删除它,看看会发生什么? -
嘿,您使用的是哪个版本的 MpAndroidchart。我使用的是 2.1.5,无法导入 ILineDataSet
标签: charts dataset mpandroidchart