Освоение гистограмм с помощью Matplotlib: подсчет значений стал проще!

Гистограммы — один из самых популярных инструментов визуализации, используемый для представления категориальных данных. Они обеспечивают ясный и краткий способ сравнения различных категорий и соответствующих им значений. В этой статье мы рассмотрим различные методы создания гистограмм с использованием библиотеки Matplotlib в Python. Мы сосредоточимся конкретно на использовании функции value_counts()для эффективного подсчета значений и представления их в визуально привлекательной форме. Так что хватайте свое программирующее оборудование и давайте окунемся в мир гистограмм!

Метод 1: базовая гистограмма
Первый метод предполагает создание базовой гистограммы с использованием Matplotlib. Предположим, у нас есть DataFrame pandas с именем dataсо столбцом с именем category, и мы хотим визуализировать количество каждой категории:

import pandas as pd
import matplotlib.pyplot as plt
data = pd.read_csv('data.csv')
category_counts = data['category'].value_counts()
plt.bar(category_counts.index, category_counts.values)
plt.xlabel('Category')
plt.ylabel('Count')
plt.title('Bar Chart: Category Counts')
plt.show()

Метод 2: горизонтальная гистограмма
Если вы предпочитаете горизонтальную гистограмму, Matplotlib предоставляет функцию barh(). Это позволяет создать гистограмму с горизонтальными полосами вместо вертикальных:

plt.barh(category_counts.index, category_counts.values)
plt.xlabel('Count')
plt.ylabel('Category')
plt.title('Horizontal Bar Chart: Category Counts')
plt.show()

Метод 3: настройка цветов и стилей гистограмм
Matplotlib позволяет настраивать цвета и стили гистограммы. Вы можете использовать параметр color, чтобы указать цвет полос, и параметр edgecolor, чтобы задать цвет краев полос. Кроме того, вы можете настроить ширину полос с помощью параметра width:

plt.bar(category_counts.index, category_counts.values, color='skyblue', edgecolor='black', width=0.5)
plt.xlabel('Category')
plt.ylabel('Count')
plt.title('Customized Bar Chart: Category Counts')
plt.show()

Метод 4: гистограмма с накоплением
В некоторых случаях может потребоваться сравнить несколько переменных в каждой категории. Matplotlib позволяет создавать составные гистограммы, нанося несколько наборов столбцов друг на друга:

data = pd.read_csv('data.csv')
grouped_data = data.groupby(['category', 'variable']).size().unstack()
grouped_data.plot(kind='bar', stacked=True)
plt.xlabel('Category')
plt.ylabel('Count')
plt.title('Stacked Bar Chart: Category Counts by Variable')
plt.show()

Метод 5: сгруппированная гистограмма
В качестве альтернативы вы можете создать сгруппированную гистограмму для сравнения значений для разных категорий. Этого можно добиться, регулируя положение полосок с помощью функции np.arange():

import numpy as np
data = pd.read_csv('data.csv')
grouped_data = data.groupby(['category', 'variable']).size().unstack()
categories = grouped_data.index
x = np.arange(len(categories))
width = 0.2
fig, ax = plt.subplots()
for i, col in enumerate(grouped_data.columns):
    ax.bar(x + (width * i), grouped_data[col], width=width, label=col)
ax.set_xlabel('Category')
ax.set_ylabel('Count')
ax.set_title('Grouped Bar Chart: Category Counts by Variable')
ax.set_xticks(x)
ax.set_xticklabels(categories)
ax.legend()
plt.show()

В этой статье мы рассмотрели несколько методов создания гистограмм с использованием Matplotlib. Мы начали с базовой гистограммы, а затем узнали о горизонтальных гистограммах, настройке цветов и стилей, составных гистограммах и сгруппированных гистограммах. Используя функцию value_counts(), мы смогли эффективно подсчитывать значения и визуализировать их, используя мощные возможности построения графиков Matplotlib. Благодаря этим методам в вашем наборе инструментов вы сможете создавать потрясающие гистограммы для эффективного анализа и передачи категориальных данных.