Как создать гистограмму относительной частоты в matplotlib
Гистограмма относительной частоты — это график, на котором отображаются относительные частоты значений в наборе данных.
Вы можете использовать следующий синтаксис для создания гистограммы относительной частоты в Matplotlib в Python:
import matplotlib. pyplot as plt import numpy as np #define plotting area fig = plt. figure () ax = fig. add_subplot (111) #create relative frequency histogram ax. hist (data, edgecolor=' black ', weights=np. ones_like (data) / len (data))
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: создание гистограммы относительной частоты в Matplotlib
Следующий код показывает, как создать гистограмму регулярной частоты в Matplotlib:
import numpy as np
import matplotlib. pyplot as plt
#define data values
data = [8, 8, 9, 12, 13, 13, 14, 14, 15, 18, 22, 23, 24, 25, 30]
#create frequency histogram
fig = plt. figure ()
ax = fig. add_subplot (111)
ax. hist (data, edgecolor=' black ')
Ось X показывает интервалы для значений данных, а ось Y показывает частоту каждого интервала.
Мы можем использовать следующий код для отображения относительных частот по оси Y:
import numpy as np
import matplotlib. pyplot as plt
#define data values
data = [8, 8, 9, 12, 13, 13, 14, 14, 15, 18, 22, 23, 24, 25, 30]
#create relative frequency histogram
fig = plt. figure ()
ax = fig. add_subplot (111)
ax. hist (data, edgecolor=' black ', weights=np. ones_like (data) / len (data))
По оси Y теперь отображаются относительные частоты.
Например, всего в наборе данных 15 значений.
Таким образом, вместо того, чтобы показывать частоту 4 на оси Y для самого высокого столбца на графике, ось Y теперь показывает 4/15 = 0,2667 .
Мы также можем использовать функцию PercentFormatter() Matplotlib для отображения значений по оси Y в процентах:
import numpy as np
import matplotlib. pyplot as plt
from matplotlib. ticker import PercentFormatter
#define data values
data = [8, 8, 9, 12, 13, 13, 14, 14, 15, 18, 22, 23, 24, 25, 30]
#create relative frequency histogram with percentages on y-axis
fig = plt. figure ()
ax = fig. add_subplot (111)
ax. hist (data, edgecolor=' black ', weights=np. ones_like (data)* 100 / len (data))
ax. yaxis . set_major_formatter (PercentFormatter())
Обратите внимание, что ось Y теперь отображает относительные частоты в процентах.
Дополнительные ресурсы
В следующих руководствах объясняется, как создавать другие распространенные графики в Matplotlib:
Как изменить цвет гистограммы Matplotlib
Как настроить размер ячейки в гистограммах Matplotlib
Как создать гистограмму из Pandas DataFrame