如何制作x轴上有两个类别的堆积条形图?

RK-约翰斯

我正在尝试创建一个堆叠条形图,它在 x 轴上有两个类别,在这种情况下,我希望按组然后按年份。

我目前在 PyCharm 中使用 Python 3。我已经在 excel 中创建了一个模型来实现我的目标。

如果我在 Excel 中使用我的示例代码并创建一个数据透视图,我可以创建我正在寻找的确切图形。我已将 Excel 中的图表和示例数据放在 Google 表格中,以便您查看:

https://docs.google.com/spreadsheets/d/1jov0DwcMA8wUFXLSo88b-MfzfRI-BaOQF8PVjzogA0o/edit?usp=sharing

柴可夫斯基

假设您将数据保存到一个csv名为tmp.csv(导出到csvExcel 中)文件中,那么此脚本可以构建您想要的图形

import pandas as pd
from matplotlib import pyplot as plt 

tmp = pd.read_csv('tmp.csv')
tmp_small = tmp.drop(['Group', 'Year'], axis=1)
year = tmp.loc[:, 'Year'].values
group = tmp.loc[:, 'Group'].values[[0, 2, 4]]

fig, ax = plt.subplots(figsize=(8, 6))
palette = ['r', 'g', 'b']

for ind in range(6):
    tmp_values = tmp_small.iloc[ind].values
    for count, item in enumerate(tmp_values):
        offset = np.sum(tmp_values[:count]) if count > 0 else 0
        ax.bar(x=ind, width=0.5, height=item, bottom=offset, color=palette[count])
ax.set_xticks(np.arange(len(year)))
ax.set_xticklabels(year)

ax.set_xlim(-1, 6.5)
ax.text(0.3, -10, group[0])
ax.text(2.3, -10, group[1])
ax.text(4.3, -10, group[2])

输出图是

数字

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何制作每个 X 轴项目有两个值的垂直条形图

R中具有两个类别的堆叠条形图

R堆积超过100个类别的条形图

堆积条形图:如何更改值/类别的顺序?

带有两个 Y 轴和公共 X 轴的 Matplotlib 条形图

如何在R的同一图上创建具有不同x和y轴的两个条形图?

如何通过在 x 轴上使用两个变量和在 y 轴上使用分组变量来制作条形图?

如何在R中用单个x轴绘制两个分组的条形图(垂直)?

Matlab - 带有两个图和两个轴的条形图

如何制作具有两个显示比例的分类变量的分组条形图?

Matplotlib:如何绘制两个具有相同x / y轴但一个沿y轴从另一个开始的条形图

熊猫:具有两个条和两个y轴的条形图

带有一些负值和有序类别的堆积条形图

熊猫:如何绘制一个有两个类别和四个系列的条形图?

将两个堆积条形图组合成一个分组堆积条形图

两个类别变量的R条形图

带两个y轴的条形图

如何制作X轴包含间隙的条形图

如何在x轴上具有两个类别的R中手动创建箱形图

如何制作带有并排两个 y 变量和标准误差的条形图

具有两个y轴的Seaborn条形图

在MATLAB中绘制带有两个y轴和多个条的条形图

带有两个 Y 轴问题的水平堆叠条形图

使用Plotly.js绘制两个条形图和两个散点图并共享相同的x轴

如何在 R 中使用布尔类别表作为 x 轴标签制作条形图?

如何在 x 轴上创建带有均值和比例变量 (1-5) 的堆积条形图?

在Plotly的同一X轴和Y轴上有多个条形图

如何在 R Shiny 应用程序中创建具有两个反应值的堆积百分比条形图?

为按两个变量分组的数据框绘制堆积条形图