Шаг 52.
Язык Python. Визуализация данных. Библиотека Matplotlib. Визуализация данных. Столбчатые и круговые диаграммы. Столбчатые диаграммы
На этом шаге мы рассмотрим построение таких диаграмм.
Для визуализации категориальных данных хорошо подходят столбчатые диаграммы. Для их построения используются функции:
- bar() - вертикальная столбчатая диаграмма;
- barh() - горизонтальная столбчатая диаграмма.
Построим простую диаграмму:
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(123)
groups = [f'P{i}' for i in range(7)]
counts = np.random.randint(3, 10, len(groups))
plt.bar(groups, counts)
plt.show()
Архив с файлом можно взять
здесь.
Результат работы приложения изображен на рисунке 1.
Рис.1. Вертикальная столбчатая диаграмма
Если заменим bar() на barh(), то получим горизонтальную диаграмму:
import matplotlib.pyplot as plt
import numpy as np
np.random.seed(123)
groups = [f'P{i}' for i in range(7)]
counts = np.random.randint(3, 10, len(groups))
plt.barh(groups, counts)
plt.show()
Архив с файлом можно взять
здесь.
Результат работы приложения изображен на рисунке 2.
Рис.2. Горизонтальная столбчатая диаграмма
Рассмотрим более подробно параметры функции bar():
Основные параметры:
- х: массив
- x-координаты столбцов.
- height: скалярная величина или массив
- Высоты столбцов.
- width: скалярная величина, массив или optional
- Ширина столбцов.
- bottom: скалярная величина, массив или optional
- у-координата базы.
- align: {'center', 'edge'}, optional; значение по умолчанию: 'center'
- Выравнивание по координате х.
Дополнительные параметры:
- color: цвет (смотри 18 шаг), набор цветовых элементов или optional
- Цвет столбцов диаграммы.
- edgecolor: цвет (смотри 18 шаг), набор цветовых элементов или optional
- Цвет границы столбцов.
- linewidth: скалярная величина, массив или optional
- Ширина границы.
- tick_label: str, массив или optional
- Метки для столбца.
- xerr, yerr: скалярная величина, массив размера shape(N,), shape(2, N) или optional
- Величина ошибки для графика. Выставленное значение прибавляется/удаляется к верхней (правой - для
горизонтального графика) границе. Может принимать следующие значения:
- скаляр: симметрично +/- для всех баров;
- shape(N,): симметрично +/- для каждого бара;
- shape(2, N): выборочного - и + для каждого бара. Первая строка содержит нижние значения ошибок, вторая строка - верхние;
- None: не отображать значения ошибок. Это значение используется по умолчанию.
- ecolor: цвет (смотри 18 шаг), набор цветовых элементов или optional; значение по умолчанию: 'black'
- Цвет линии ошибки.
- log: bool, optional; значение по умолчанию: False
- Включение логарифмического масштаба для оси у.
- orientation: {'vertical', 'horizontal'}, optional
- Ориентация: вертикальная или горизонтальная.
Пример, демонстрирующий работу с параметрами bar():
import matplotlib.pyplot as plt
import numpy as np
import matplotlib.colors as mcolors
bc = mcolors.BASE_COLORS
np.random.seed(123)
groups = [f'P{i}' for i in range(7)]
counts = np.random.randint(0, len(bc), len(groups))
width = counts * 0.1
colors = [['r', 'b', 'g'][int(np.random.randint(0, 3, 1))] for _ in counts]
plt.bar(groups, counts, width=width, alpha=0.6, bottom=2,
color=colors, edgecolor='k', linewidth=2)
plt.show()
Архив с файлом можно взять
здесь.
Результат работы приложения изображен на рисунке 3.
Рис.3. Модифицированная столбчатая диаграмма
На следующем шаге мы рассмотрим построение групповых столбчатых диаграмм.
Предыдущий шаг
Содержание
Следующий шаг