Cómo establecer el valor en la etiqueta del eje x en achartengine

En realidad en mi aplicación he creado un gráfico utilizando achartEngine . En estos en el eje x inicialmente estoy mostrando el valor de 1 – 31. Ahora en lugar de mostrar esto es posible mostrar el valor como … y así sucesivamente Al último día mes actual y cuando alcanza el último día del mes actual es decir 31-03-2012 la exhibición del valor después de que debe ser 1-04-2012 2-04-2012 … y así sucesivamente. El código que he usado mientras se muestra el valor como 1 2 3 4 5 … se da a continuación .. que alguien me ayude a resolver esto.

Código para el gráfico

  renderer = new XYMultipleSeriesRenderer(2); int length = colors.length; for (int i = 0; i < length; i++) { XYSeriesRenderer r = new XYSeriesRenderer(); r.setColor(colors[i]); r.setPointStyle(styles[i]); renderer.addSeriesRenderer(r); } int rendererLength = renderer.getSeriesRendererCount(); for (int i = 0; i < rendererLength; i++) { ((XYSeriesRenderer) renderer.getSeriesRendererAt(i)).setFillPoints(true); } 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.setChartTitle("Weight / Temperature"); renderer.setXLabels(20); renderer.setXTitle(sdFormatter.format(currentDate)); renderer.setXAxisMin(1); renderer.setXAxisMax(nMaxDay); renderer.setXLabelsAlign(Align.CENTER); renderer.setYLabels(10); renderer.setYTitle("Weight", 0); renderer.setYTitle("Temperature", 1); renderer.setYAxisMin(10, 0); renderer.setYAxisMax(90, 0); renderer.setYAxisMin(10, 1); renderer.setYAxisMax(90, 1); renderer.setYAxisAlign(Align.LEFT, 0); renderer.setYAxisAlign(Align.RIGHT, 1); renderer.setYLabelsAlign(Align.LEFT, 0); renderer.setYLabelsAlign(Align.RIGHT, 1); renderer.setAxesColor(Color.LTGRAY); renderer.setLabelsColor(Color.parseColor("#5f5f5f")); renderer.setShowGrid(true); renderer.setGridColor(Color.GRAY); 

Captura de pantalla Introduzca aquí la descripción de la imagen

Utilice la clase AverageTemperatureChart de la Demo.

 setChartSettings(renderer, "Average temperature", "Month", "Temperature", 0.5, 5.5, 0, 4, Color.LTGRAY, Color.LTGRAY); 

Luego cambie de esta manera y verifique los cambios

  for (int i = 0; i < titles.length; i++) { x.add(new double[] { 1, 2, 3, 4 }); } 

Añadir cuatro sólo para la demostración

Y añadir la etiqueta a través de renderer.addTextLabel ();

ex:

 String[] date={"1-3-2012","1-4-2012","1-5-2012","1-6-2012"}; for (int i = 0; i < date.length; i++) { renderer.addTextLabel(i+1, date[i]); } renderer.setXLabelsAlign(Align.CENTER); renderer.setXLabels(0); 

Además de la respuesta de Abhi, si quieres agregar una cuadrícula para X Labels, entonces agrega la siguiente fila:

 renderer.setShowCustomTextGrid(true); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.