Я хочу вывести гистограмму в следующем стиле:
https://i.imgur.com/XGofb3m.png
Я пытался сделать это двумя разными способами.
1) Наносим на график каждый регион (Европа, Азия и т. Д. c) в качестве отдельной таблицы данных и пытаемся объединить их:
fig = plt.figure()
for frame in [Eudf, Afdf, Asdf, EGdf, LAdf, NAdf]:
plt.bar(frame['Rec Status'], frame['Percentage'])
plt.show()
И это выводит:
https://i.imgur.com/xq6Cvgp.png
Где, я полагаю, технически можно добавить легенду и что-то вроде чтения данных, но так как это будет прочитано многими глазами, оно должно быть более четким, как идеальный результат на старте.
2) Сюжет и группировка по регионам
grouped = Alldf.groupby('Region')
ncols=3
nrows = int(np.ceil(grouped.ngroups/ncols))
fig, axes = plt.subplots(nrows=nrows, ncols=ncols, figsize=(12,4), sharey=True)
for (key, ax) in zip(grouped.groups.keys(), axes.flatten()):
grouped.get_group(key).plot(ax=ax)
ax.legend()
plt.show()
Я какое-то время играл с этим, и хотя вначале у него была линейка с правильными метками оси, я не могу вспомнить, как их вернуть, но важно то, как это сделано:
https://i.imgur.com/dQKewax.png
* 105 9 * Итак, попробовав эти два способа, я не могу придумать, что еще можно попробовать.
Может ли кто-нибудь указать мне направление функции / команды, которая позволит мне вывести 1-й график?
Ниже приведен лишь некоторый дополнительный контекст, если он имеет значение:
Я использую pandas для манипулирования исходным csv, а затем создаю fre sh dataframe из полученных данных, а затем я пытаюсь построить его с помощью matplotlib.
Я использую python 3.7 в PyCharm
Спасибо за помощь