Cómo crear un histograma polar con Python y Matplotlib

Histograma polar con Python y Matplotlib.

Tutorial de Matplotlib

Creando un gráfico que captura la atención y cuenta una historia perspicaz al espectador.

Gráfico creado por el autor

Hola, y bienvenido a este tutorial de Python + Matplotlib, donde te mostraré cómo crear el hermoso histograma polar que ves arriba.

Los histogramas polares son excelentes cuando tienes demasiados valores para un gráfico de barras estándar. La forma circular donde cada barra se vuelve más delgada hacia el centro nos permite comprimir más información en la misma área.

Una característica interesante es la comparación visual resultante entre los valores más bajos y más altos, ya que se encuentran después de dar una vuelta completa alrededor del centro.

En este tutorial, estoy utilizando datos del Informe Mundial de Felicidad e información sobre los niveles de ingresos del Banco Mundial. Ambas fuentes de datos están disponibles públicamente bajo licencias Creative Commons.

Mi marco de datos contiene 146 países y tres columnas.

Esto es cómo se ve.

Captura de pantalla por el autor

Mostraré y explicaré cada línea de código requerida para crear la visualización. Si quieres seguir, puedes encontrar el código y los datos que estoy utilizando en este repositorio de GitHub.

Empecemos.

Paso 1: Preparaciones

Importando librerías

Sólo necesitamos librerías estándar de Python que sean familiares para todos. PIL no es obligatorio, pero es mi opción preferida para manejar imágenes, lo cual hacemos al agregar banderas.

import mathimport numpy as npimport pandas as pdimport seaborn as snsimport matplotlib.pyplot as pltfrom PIL import Imagefrom matplotlib.lines import Line2Dfrom matplotlib.patches import Wedgefrom matplotlib.offsetbox import OffsetImage, AnnotationBbox

Lo único que destaca son algunas importaciones específicas de Matplotlib al final. Cubriré esos componentes más adelante en el tutorial.

Como de costumbre, uso pandas para cargar los datos.