¡Es hora de subir el nivel en Android!
Los gráficos son una gran ayuda para representar datos de una forma más fácil de consumir. ¿Sabes cómo usarlos en Android?
Con ayuda de la librería MPAndroidChart alojada en su repositorio de GitHub se hace mucho más sencillo crear gráficas.
Que también se pueden llevar a horizontal:
Pero no son los únicos, hay más.
El primer paso es implementar la librería, para ello en nuestro archivo build.gradle:
allprojects {
repositories {
maven { url'https://jitpack.io' }
}
}
// App level build.gradledependencies {
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
}
Vamos a crear un LineChart Simple:
Creamos nuestro entorno en android y en el XML de nuestro mainActivity.xml
<com.github.mikephil.charting.charts.LineChart
android:id="@+id/lineChart"
android:layout_width="match_parent"
android:layout_height="200dp"/>
Ahora en MainActivity.java, implementamos el código para que funcione:
private LineChart lineChart;
private LineDataSet lineDataSet;
// Enlazamos al XML
lineChart = view.findViewById(R.id.lineChart);
// Creamos un set de datos
ArrayList<Entry> lineEntries = new ArrayList<Entry>();
for (int i = 0; i<11; i++){
float y = (int) (Math.random() * 8) + 1;
lineEntries.add(new Entry((float) i,(float)y));
}
// Unimos los datos al data set
lineDataSet = new LineDataSet(lineEntries, "Platzi");
// Asociamos al gráfico
LineData lineData = new LineData();
lineData.addDataSet(lineDataSet);
lineChart.setData(lineData);
¡Y listo!
Claro el gráfico que obtendrás es muy sencillo en comparación con los mostrados arriba pero allí viene las opciones de personalización y ajustes a tu App.
Cuando vayas a usarlo en fragmentes, se pondrá intersante 😉
Hay otros gráficos que se pueden crear con la librería, pero además de ello ¡tienen animaciones! Mira este vídeo:
<p align=“center”><iframe width=“560” height=“315” src=“https://www.youtube.com/embed/ufaK_Hd6BpI” frameborder=“0” allow=“autoplay; encrypted-media” allowfullscreen></iframe>
Los usos son muy amplios sobre todo en el análisis de datos.
Por ejemplo, los Ingenieros Químicos pueden implementarlos en gráficos de vapor del agua, torres de destilación, diagramas de calor, diseño de reactores, uff. Las posibilidades son infinitas.
¿Tú en que lo usarías?
Hola, aun soy aprendiz en el tema, me gustaría saber como actualizar en tiempo real los datos de los gráficos?
Hola!, me podrian ayudar a graficar en el tipo lineal pero poder insertar datos X+,X-,Y+,Y-? Use la libreria pero el VallueFormatter por defecto solo me acepta String en el X, por lo que solo puedo ir hacia adelante, gracias!