我正在为我的折线图使用MPAndroidChart。 我有日期值和分数值。
例如:2016年10月10日,我的分数是45.Android - MPAndroidChart LineChart,无法根据数值日期进行绘图
我正在努力与日期。不知道如何将其设置在我的setYAxisValues中。
我得到我的值从一个休息api,并把它放在图中。
这部分是我的问题。
yVals.add(new Entry(Float.valueOf(ocd.getScore()), foo));
如果更改FOO像1正常int值,2,3我没有问题。该图正在工作。这个问题,我需要使用日期在正确的地方绘制我的价值。
@Override
protected void onPostExecute(List<ResultModel> result) {
super.onPostExecute(result);
//populating my yAxis with values from rest
for (ResultModel ocd : resModelList){
long unixSeconds = Long.parseLong(ocd.getPost_date());
Date date = new Date(unixSeconds*1000L);
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
String formattedDate = sdf.format(date);
int foo = Integer.parseInt(formattedDate);
yVals.add(new Entry(Float.valueOf(ocd.getScore()), foo));
}
}
X轴工作
//set vales
private ArrayList<String> setXAxisValues(){
xVals = new ArrayList<String>();
//MM/dd/yyyy
xVals.add("01/01/2016");
xVals.add("02/01/2016");
xVals.add("03/01/2016");
xVals.add("04/01/2016");
xVals.add("05/01/2016");
return xVals;
}
private ArrayList<Entry> setYAxisValues(){
yVals = new ArrayList<Entry>();
return yVals;
}
在此先感谢
谢谢,为我指出了正确的方向。我卡在getFormattedValue部分。你可以请这个部分帮忙一下。 –
@CharmGeld更新了这个部分,试试这个代码,它应该在设备的语言环境中打印日期。对于不同的格式选项,我建议你使用android.text.format.DateFormat或这个android.text.format.DateUtils类。他们关心每个用户的日期和时间显示选项:区域设置,12/24格式等。 –
再次感谢您的帮助 –