Как создать полярную гистограмму с помощью Python и Matplotlib

Создание полярной гистограммы в Python и Matplotlib

Учебник по Matplotlib

Создание графика, который привлекает внимание и рассказывает зрителю содержательную историю.

График, созданный автором

Привет, и добро пожаловать в этот учебник по Python + Matplotlib, где я покажу вам, как создать прекрасную полярную гистограмму, которую вы видите выше.

Полярные гистограммы отлично подходят, когда у вас слишком много значений для стандартной столбчатой диаграммы. Круглая форма, где каждый столбец становится тоньше к центру, позволяет нам упаковать больше информации в одной и той же области.

Хорошей особенностью является визуальное сравнение между наименьшими и наибольшими значениями, когда они встречаются после одного оборота вокруг центра.

В этом учебнике я использую данные отчета о счастье в мире и информацию о доходах от Всемирного банка. Оба источника данных общедоступны и имеют лицензии Creative Commons.

Мой набор данных содержит 146 стран и три столбца.

Вот как он выглядит.

Снимок экрана, сделанный автором

Я покажу и объясню каждую строку кода, необходимую для создания визуализации. Если вы хотите следовать за мной, вы можете найти код и данные, которые я использую в этом репозитории GitHub.

Давайте начнем.

Шаг 1: Подготовка

Импорт библиотек

Нам нужны только стандартные библиотеки Python, которые знакомы каждому. PIL не является обязательным, но это мой предпочтительный выбор для работы с изображениями, что мы делаем, добавляя флаги.

import math
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from PIL import Image
from matplotlib.lines import Line2D
from matplotlib.patches import Wedge
from matplotlib.offsetbox import OffsetImage, AnnotationBbox

Единственное, что выделяется, это несколько конкретных импортов Matplotlib в конце. Я расскажу о этих компонентах позже в учебнике.

Как обычно, я использую pandas для загрузки данных.