0

我花了很多时间但找不到答案。我有一个从 40 到 120 点的线条图形。每个点都有时间。我只想在 Xaxis 上显示时间为 0:00 或 12:00 的点。

combinedChart.setData(prepareHistoryHour(photo_data));
       combinedChart.fitScreen();
       combinedChart.getXAxis().setAxisMinimum(0);
       combinedChart.getXAxis().setGranularity(1);
       combinedChart.getXAxis().setGranularityEnabled(true);
       combinedChart.getXAxis().setLabelCount(72);
      combinedChart.getXAxis().setTextSize(14f);
       combinedChart.setVisibleXRangeMaximum(72);
       combinedChart.setMaxVisibleValueCount(700);
       combinedChart.getLineData().setDrawValues(true);
       combinedChart.getXAxis().setValueFormatter(new ValueFormatter() {
           @Override
           public String getFormattedValue(float value) {

               Log.d("WHS xaxis", String.valueOf(value));
               long time=dc_forecastHourList.get((int)value).getDT_withOffset();
                   String s=new SimpleDateFormat("HH").format(new Date(time*1000L));
               if (Integer.parseInt(s) ==0){
                   return new SimpleDateFormat("MMdd").format(new Date(time*1000L));
               }
                   if (Integer.parseInt(s) %12==0){
                       return new SimpleDateFormat("HH").format(new Date(time*1000L))+":00";
                   }

           return  "";
           }

       });

填写条目

       for(int i=0; i<dc_forecastHourList.size();i++){

           entriesTemp.add(new Entry(i,Float.parseFloat((dc_forecastHourList.get(i).getTemp()))-temperature_correct));;
           entriesPressure.add(new Entry(i,Float.parseFloat((dc_forecastHourList.get(i).getPressure()))-correctpressure));
           entrBarWind_speed.add(new Entry(i,Float.parseFloat((dc_forecastHourList.get(i).getWind_speed()))+correctWind));
           entrBarWind_dir.add(new Entry(i,Float.parseFloat((dc_forecastHourList.get(i).getWind_deg()))));

       }

但是 ValueFormatter 并不是针对所有点都调用的。这是跳过不同间隔的调用..

日志:例如

D/WHS xaxis: 24.0
D/WHS xaxis: 27.0
D/WHS xaxis: 30.0
D/WHS xaxis: 33.0
D/WHS xaxis: 36.0

结果,我无法在 Xaxis 上显示正确的值。谢谢你的帮助!

4

0 回答 0