2016-05-13 4 views
0

Ich habe 40 Datensätze eingefügt. Immer wenn ich ein Diagramm öffne, wird es vom ersten Datensatz bis zu 10 Datensätzen angezeigt und muss nach rechts blättern, um weitere 10 Datensätze zu sehen. Wie man den letzten Datensatz anfänglich anzeigt und von rechts nach links blättert, um andere Aufzeichnungen zu sehen, zB 40 bis 30,30 bis 20 und so weiter.Wie zuletzt eingefügte Grafik in MP Android-Diagramm anzeigen?

ich nur

gegeben
barChart = (BarChart) findViewById(R.id.chart); 
    barChart.setDescription("Activity Tracking"); 
    ViewPortHandler handlers = barChart.getViewPortHandler(); 
    handlers.setMaximumScaleX(10); 

enter image description here

enter image description here

ich die letzten 10 eingefügten Datensatz anstatt zuerst 10 weitere Vorgehen angezeigt werden müssen?

Antwort

1

Um die Ansicht auf der rechten Seite, verwenden Sie die Methode public void moveViewTo(float xIndex, float yValue, AxisDependency axis)

  mChart.postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        mChart.moveViewTo(xIndex, mChart.getBarData().getYMax(), 
          YAxis.AxisDependency.RIGHT, 1000); 
       } 
      }, 500); 

Der erste Parameter ist der Index auf der X-Achse, die Sie verschieben möchten, zu bewegen. Dadurch wird die Ansicht zum letzten Element verschoben. Wenn Sie wollen, dass es animiert wird, können Sie tun

  mChart.postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        mChart.moveViewToAnimated(xIndex, mChart.getBarData().getYMax(), 
          YAxis.AxisDependency.RIGHT, 1000); 
       } 
      }, 500); 

Hier ist der vierte Parameter die Zeit der Animation.

Also zum 20. Datensatz verschieben, 20 als xIndex, für 30 setzen 30 usw.

+0

Dank @ankit. Ich habe eine Frage. Was ist mPlacementChart, listSize und dataSetSize? Ich benutzte als Objekt von zwei in der oben genannten Methode ... private BarDataSet-Datensatz; private BarData-Daten; aber es zeigt nicht die Methode an. – Shadow

+0

Eigentlich sind mPlacementChart und mChart gleich. Es ist das Balkendiagramm, das Sie scrollen möchten. Ich nahm es direkt aus meinem Code und vergaß es zu bearbeiten. Der Parameter listSize/dataSetSize ist der xIndex oder der Index des Werts, in den der Graph verschoben werden soll. ex, um den 30. Wert zu bewegen, Pass 29, für 40. Pass 39. Ich bewegte es bis zum allerletzten, also gab ich listSize - 1. Edited jetzt, um es klarer zu machen –

+0

gut danke für update. Für die erste Methode wird sie angezeigt, aber für den zweiten Parameter moveViewToAnimated wird diese Methode überhaupt nicht angezeigt. Ist es in der Bibliothek geändert? Es hat moveViewToX, moveViewToY und moveViewTo alleine. – Shadow