2012-04-02 7 views
0

Tatsächlich habe ich eine TimeChart Grafik in meiner App erstellt. Aber während Daten auf der x-Achse angezeigt werden, zeigt es ein Problem. Der Code, den ich beim Entwerfen des Diagramms mit Renderer verwendet habe, wird unten zusammen mit dem Screenshot gezeigt. Wenn jemand weiß, warum dieses Problem auftritt, bitte helfen Sie mir, dies zu lösen.So zeigen Sie Daten auf der X-Achse in der richtigen Reihenfolge an

Code:

Calendar pCalendar_FirstDay = Calendar.getInstance(); 
    int nMinDay = pCalendar_FirstDay.getActualMinimum(Calendar.DATE); 
    Date currentDate = pCalendar_FirstDay.getTime();   


    renderer = new XYMultipleSeriesRenderer();  

    //set value for x axis  
    renderer.setChartTitle("Weight/Temperature"); 
    renderer.setXLabels(15);   
    renderer.setXAxisMin(new Date(currentDate.getYear(), currentDate.getMonth(), nMinDay).getTime()); 
    renderer.setXAxisMax(currentDate.getTime()); 
    renderer.setXLabelsAlign(Align.CENTER); 

    //set value for y axis 
    renderer.setYLabels(10); 
    renderer.setYTitle("Weight", 0); 
    renderer.setYAxisMin(10, 0); 
    renderer.setYAxisMax(90, 0); 
    renderer.setYAxisAlign(Align.LEFT, 0); 
    renderer.setYLabelsAlign(Align.LEFT, 0); 

    renderer.setPanLimits(new double[]{0,currentDate.getTime(), 10, 90}); 
    renderer.setAxisTitleTextSize(12); 
    renderer.setChartTitleTextSize(12); 
    renderer.setLabelsTextSize(10); 
    renderer.setLegendTextSize(12); 
    renderer.setPointSize(5f); 
    renderer.setApplyBackgroundColor(true); 
    renderer.setBackgroundColor(Color.parseColor("#F5F5F5")); 
    renderer.setMarginsColor(Color.parseColor("#F5F5F5")); 
    renderer.setAxesColor(Color.LTGRAY); 
    renderer.setLabelsColor(Color.parseColor("#5f5f5f"));   
    renderer.setShowGrid(true); 
    renderer.setGridColor(Color.GRAY); 

Der Ausgang i bekam

enter image description here

Der Ausgang ich will, ist

enter image description here

+0

Hallo, ich habe versucht, ur-code, um das Ergebnis als "Die Ausgabe habe ich" Bild zu bekommen. aber auf der x-Achse bekomme ich nur die Epoche ("1366704743") Werte nicht die Daten wie "12-April-2013". Kannst du mir helfen, hier pls zu setzen .. Danke ... – kAnNaN

Antwort

0

Von Ihren APIs nehme ich an, dass Sie AChartEngine verwenden. Wie haben Sie die TimeChart-Instanz erstellt? Sie sollten so etwas wie dies tun:

ChartFactory.getTimeChartIntent(context, dataset, renderer, pattern); 

wo Muster ein Datumsformat Format, die Sie für immer die gewünschte Anzeige optimieren sollte.

+0

Yeh ich habe es nur so gemacht .... aber kannst du meine setXAxisMin und setXAxisMax Wert überprüfen..becoz in meinem Fall zunächst die Datenpunkte enthält nichts. Es wird später vom Benutzer gestellt – AndroidDev

Verwandte Themen