MPAndroidChart – Añadir etiquetas al gráfico de barras

Es necesario que mi aplicación tenga una etiqueta en cada barra del gráfico de barras. ¿Hay una manera de hacer esto con MPAndroidChart? No pude encontrar una manera de hacer esto en el proyecto wiki / javadocs.

Si no hay una manera de hacer esto, ¿hay otro software que me permita hacerlo?

Introduzca aquí la descripción de la imagen

Respuesta actualizada (MPAndroidChart v3.0.1)

Al ser una característica de uso común, v3.0.1 de la biblioteca agregó la clase IndexAxisValueFormatter exactamente para este propósito, por lo que es sólo una línea de código ahora:

 mBarChart.getXAxis().setValueFormatter(new IndexAxisValueFormatter(labels)); 

El ProTip de la respuesta original sigue siendo válido.

Respuesta Original (MPAndroidChart v3.0.0)

Con v3.0.0 de la biblioteca no hay forma directa de establecer etiquetas para las barras, pero hay una solución bastante decente que utiliza la interfaz ValueFormatter .

Cree un formateador nuevo como este:

 public class LabelFormatter implements IAxisValueFormatter { private final String[] mLabels; public LabelFormatter(String[] labels) { mLabels = labels; } @Override public String getFormattedValue(float value, AxisBase axis) { return mLabels[(int) value]; } } 

A continuación, establezca este formateador en el eje x (suponiendo que ya ha creado una String[] contiene las etiquetas):

 mBarChart.getXAxis().setValueFormatter(new LabelFormatter(labels)); 

ProTip: si desea eliminar las etiquetas adicionales que aparecen al hacer zoom en el gráfico de barras, puede utilizar la función de granularidad:

 XAxis xAxis = mBarChart.getXAxis(); xAxis.setGranularity(1f); xAxis.setGranularityEnabled(true); 

Usted puede fijar la etiqueta de la columna arriba añadiendo esta línea va el código

 xAxis.setPosition(XAxis.XAxisPosition.BOTTOM); 
  • MPAndroidChart - Diagrama de barras redondeado
  • MPAndroidChart: agregar imagen personalizada dentro de las barras
  • Cómo ocultar leyendas y el eje en MPAndroidChart?
  • MPAndroidChart ¿cómo establecer el valor mínimo y máximo del eje y, o establecer el zoom predeterminado?
  • MPAndroidChart RadarChart se derrumba
  • MPAndroidChart set center vertical line
  • ¿Cómo puedo hacer un LimitLine dragable en MPAndroidChart
  • ¿Cómo hacer en tiempo real gráfico de múltiples líneas?
  • Establecer valores de barras en el centro de la barra en MPAndroid Bar Chart
  • No se pudo resolver: com.github.PhilJay: MPAndroidChart: v2.1.4
  • MPAndroidChart: Ocultar etiquetas de valor en un gráfico de barras apilado
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.