Тот же вопрос уже задавали для морских коробок .Для блокпостов matplotlib это еще проще, поскольку boxplot
напрямую возвращает словарь участвующих исполнителей, см. boxplot
документацию .
Это означает, что если bplot = ax.boxplot(..)
- ваш блокпостВы можете получить доступ к полям через bplot['boxes']
, выбрать один из них и установить его стиль линии по своему желанию.Например,
bplot['boxes'][2].set_linestyle("-.")
Изменение примера boxplot_color
import matplotlib.pyplot as plt
import numpy as np
# Random test data
np.random.seed(19680801)
all_data = [np.random.normal(0, std, size=100) for std in range(1, 4)]
labels = ['x1', 'x2', 'x3']
fig, ax = plt.subplots()
# notch shape box plot
bplot = ax.boxplot(all_data, vert=True, patch_artist=True, labels=labels)
# Loop through boxes and colorize them individually
colors = ['pink', 'lightblue', 'lightgreen']
for patch, color in zip(bplot['boxes'], colors):
patch.set_facecolor(color)
# Make the third box dotted
bplot['boxes'][2].set_linestyle("-.")
plt.show()
