Basketball Analytics App
Tomar decisiones basadas en datos en los deportes es fundamental (sino lo crees, tienes que ver la película Moneyball;). Sin embargo, esto no es siempre sencillo, porque mostrar todos esos datos de una forma visual y fácil de entender para cualquier persona no es sencillo.
Con esta app intento facilitar el consumo de datos de tiro de la NBA que precisamente faciliten ese proceso.
Además, inspirado por Moneyball, he aprovechado para crear un comparador de jugadores en función del porcentaje de acierto. Porque, quienes nosotros creemos son los mejores, no siempre lo son o, al menos, no en lo que a acierto se refiere.
Por último, cómo fan del basket, he aprovechado para hacer mi pequeño homenaje a Kobe Bryant, ofreciendo una visualización interactiva de sus logros y estadísticas que, sin duda alguna, deja claro por qué es considerado una leyenda.
Datos y proceso
En este caso, más que el proceso realizado en la propia app, lo más complicado ha sido la obtención de los datos. Al fin y al cabo para poder mostrar un mapa de calor en el campo requieres de las coordenadas de tiro. Si esto lo quieres individualizar, requieresos datos para cada jugador de cada partido de una temporada. Y ya si quieres obtener el porcentaje de acierto, requieres del resultado de ese tiro.
Por suerte en Estados Unidos están bastante avanzados en lo que a datos se refiere y existen negocios basados en proveer esos datos. En mi caso, los he obtenido en MySportsFeed que de forma gratuita me ha dado acceso a su API para poder obtenerlos.
Por otro lado, los datos de Kobe Bryant los he obtenido escrapeando la página
basketball-reference.com, ya he obtenerlos de esta forma era mucho más sencillo.
Por último la obtención del número del dorsal y la imagen del equipo y el jugador lo he hecho mediante scraping de la página de la NBA, ya que era la única forma de asegurarme los últimos dorsales, equipos, imágenes, etc.
Desbloqueando el potencial de las Apps Shiny
Como verás esta app no es tan compleja a nivel técnico como otras que he hecho, pero sí visualmente mucho más llamativa.
La razón es que he presentado esta app la concurso internacional de apps Shiny, con el objetivo de optar al premio de la app más visual.
Y es que, teniendo conocimientos de html, CSS y un poco de JavaScript, se pueden crear aplicaciones muy visuales, atractivas y animadas que gusten más al usuario final. En mi opinión, una app por muy técnicamente compleja que sea, si no es atractiva, es mucho menos probable que se use.
En este sentido, la app tiene un diseño «material design» típico de las aplicaciones de Android y que, personalmente, me encanta. Es responsive, es decir, todos los gráficos, textos etc. deberían verse bien tanto en Desktop como en ordenador. Por último, he usado JavaScript para dar un poco más de personalidad a la pestaña de Kobe Bryant, haciendo que sea única en diseño con colores y fondo diferentes, así como la creación de una animación de confeti al hacer una comparativa entre jugadores.
En definitiva, creo que esta app es una clara muestra de la importancia de que una visualización de datos sea atractiva y como las apps Shiny son súper flexibles y útiles en este sentido.