2016-11-13 4 views
0

У меня есть проблема с graphView на андроид, когда я пытаюсь показать мой график с датами по оси х я получил этот результат: graphAndroid график оси дата вида не отображается должным образом

Значения х изменяет каждый раз Я генерирую график, и график на графике иногда отображается, иногда он не является действительно случайным.

Вот мой код:

  Cursor weeklySale = db.getWeeklySale(login); 

      DataPoint[] dp= new DataPoint[weeklySale.getCount()]; 
      Date[] dates= new Date[weeklySale.getCount()]; 

      int i=0; 
      while(weeklySale.moveToNext()) 
      { 
       SimpleDateFormat sdf = new SimpleDateFormat("dd MM yyyy"); 
       Calendar cal = Calendar.getInstance(); 
       cal.set(Calendar.WEEK_OF_YEAR, Integer.valueOf(weeklySale.getString(1))); 
       cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); 

       // Date c = new Date(weeklySale.getLong(1)); 
       dp[i]= new DataPoint(cal.getTime(), (long)weeklySale.getFloat(0)); 
       dates[i]= cal.getTime(); 

       System.out.println(weeklySale.getFloat(0)+" + "+weeklySale.getString(1)+" , "+sdf.format(cal.getTime())); 
      } 

      graph.removeAllSeries(); 

      GridLabelRenderer gridLabel = graph.getGridLabelRenderer(); 
      gridLabel.setHorizontalAxisTitle("Semaine"); 
      gridLabel.setVerticalAxisTitle("CA"); 

      LineGraphSeries series = new LineGraphSeries<DataPoint>(dp); 
      series.setColor(Color.RED); 
      graph.addSeries(series); 

Благодаря

ответ

0

пытаются изменить количество меток через:

graph.getGridLabelRenderer().setNumHorizontalLabels()

Кроме того, вы должны переместить эту строку из цикла в то время как для экономии памяти и производительности: SimpleDateFormat sdf = new SimpleDateFormat("dd MM yyyy");

 Смежные вопросы

  • Нет связанных вопросов^_^