как настроить интервалы и цвета столбцов в matplotlib - PullRequest
0 голосов
/ 16 июня 2019

У меня есть следующие данные, где A и B принадлежат двум разным категориям;кроме того, в пределах A и B A1 (или B1) принадлежат подкатегориям A и B. Другими словами, A1 находится в одной подкатегории, а A2 и A3 - в другой.Аналогично для B.

labels= ['A1', 'A2', 'A3', 'B1', 'B2', 'B3']
values= [2, 4, 3, 2.5, 3.5, 4]

Я хотел бы сделать гистограмму, где категории A и B, а также подкатегории разделены (предпочтительно разными цветами).Моя попытка:

import matplotlib.pyplot as plt
import numpy as np

index = np.arange(len(labels))

plt.bar(index, values)
plt.ylabel('Values', fontsize=14)
plt.xticks(index, labels, fontsize=14)
plt.show()

enter image description here

Как настроить расстояние / цвет между полосами?

1 Ответ

1 голос
/ 16 июня 2019

Вы можете установить индексирование и цвета вручную:

import matplotlib.pyplot as plt
import numpy as np

labels= ['A1', 'A2', 'A3', 'B1', 'B2', 'B3']
values= [2, 4, 3, 2.5, 3.5, 4]

# set indexing manually
index = np.array([0,1,2,4,5,6])
# plot bars with colors
bar_list = plt.bar(index, values, width=0.5, color=('r', 'r', 'r', 'b','b','b'))

plt.ylabel('Values', fontsize=14)
plt.xticks(index, labels, fontsize=14)
plt.show()

Вывод:

enter image description here

...