Как настроить размер бина в гистограммах Matplotlib


Вы можете использовать один из следующих методов для настройки размера ячейки гистограмм в Matplotlib:

Способ 1: укажите количество ячеек

plt.hist (data, bins= 6 )

Способ 2: указать границы корзины

plt.hist (data, bins=[0, 4, 8, 12, 16, 20])

Способ 3: укажите ширину корзины

w=2
plt.hist (data, bins=np.arange (min(data), max(data) + w, w))

В следующих примерах показано, как использовать каждый из этих методов на практике.

Пример 1: Укажите количество бинов

В следующем коде показано, как указать количество бинов для использования в гистограмме:

import matplotlib.pyplot as plt

#define data
data = [1, 2, 2, 4, 5, 5, 6, 8, 9, 12, 14, 15, 15, 15, 16, 17, 19]

#create histogram with specific number of bins
plt.hist (data, edgecolor='black', bins= 6 )

Имейте в виду, что чем больше бинов вы укажете, тем более узкими будут бины.

Пример 2. Указание границ корзины

В следующем коде показано, как указать фактические границы ячеек в гистограмме:

import matplotlib.pyplot as plt

#define data
data = [1, 2, 2, 4, 5, 5, 6, 8, 9, 12, 14, 15, 15, 15, 16, 17, 19]

#create histogram with specific bin boundaries
plt.hist (data, edgecolor='black', bins=[0, 4, 8, 12, 16, 20])

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

Пример 3: Укажите ширину корзины

В следующем коде показано, как указать ширину интервала в гистограмме:

import matplotlib.pyplot as plt
import numpy as np

#define data
data = [1, 2, 2, 4, 5, 5, 6, 8, 9, 12, 14, 15, 15, 15, 16, 17, 19]

#specify bin width to use
w= 2

#create histogram with specified bin width
plt.hist (data, edgecolor='black', bins=np.arange (min(data), max(data) + w, w))

Имейте в виду, что чем меньше ширина корзины, которую вы укажете, тем более узкими будут корзины.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные функции в Matplotlib:

Как увеличить размер графика в Matplotlib
Как создать график плотности в Matplotlib
Как построить временной ряд в Matplotlib