La visualización de datos es una herramienta esencial en el análisis de fútbol, permitiendo a los entusiastas y analistas comprender mejor el rendimiento de los equipos y jugadores. En este artículo, exploraremos la librería de Python «Mplsoccer», diseñada específicamente para crear visualizaciones relacionadas con el fútbol.
¿Qué es Mplsoccer?
Mplsoccer es una librería de Python que se especializa en la creación de gráficos y visualizaciones centradas en el fútbol. Esta herramienta facilita la representación de datos estadísticos, tácticas y eventos de un partido de fútbol de manera intuitiva y atractiva.
Instalación
Antes de comenzar, asegúrate de tener la librería instalada. Puedes instalar Mplsoccer usando pip:
pip install mplsoccer
Ejemplos de Uso
1. Importamos las librerías que necesitamos
from mplsoccer.pitch import Pitch
from mplsoccer import arrowhead_marker
import numpy as np
2. Comencemos creando un campo de fútbol básico con Mplsoccer:
pitch = Pitch(pitch_color='grass', line_color='white', stripe=True)
fig, ax = pitch.draw()
2. Representando dirección de pases y/o tiros:
pitch = Pitch()
fig, ax = pitch.draw()
pitch.arrows(20, 20, 45, 60, ax=ax)
pitch = Pitch()
fig, ax = pitch.draw()
pitch.lines(30, 30, 0, 40, comet=True, transparent=True, ax=ax)
3. Mostrar posición de un jugador
pitch = Pitch()
fig, ax = pitch.draw()
pitch.scatter(30, 30, ax=ax)
pitch = Pitch()
fig, ax = pitch.draw()
pitch.scatter(30, 30, rotation_degrees=45, marker=arrowhead_marker, ax=ax)
4. Posición del balón:
pitch = Pitch()
fig, ax = pitch.draw()
pitch.scatter(20, 50, marker='football', ax=ax)
5. Ángulo de tiro o visión de un jugador:
pitch = Pitch()
fig, ax = pitch.draw()
pitch.goal_angle(100, 30, alpha=0.5, color='red', ax=ax)
6. Representación de zonas:
pitch = Pitch(label=True, axis=True)
fig, ax = pitch.draw()
shape1 = np.array([[60, 2], [80, 30], [40, 30], [40, 20]])
shape2 = np.array([[70, 70], [60, 50], [40, 40]])
verts = [shape1, shape2]
pitch.polygon(verts, color='red', alpha=0.3, ax=ax)