我想在不同类别可见的地方堆叠直方图。
目前我有没有类的直方图,代码如下:
plt.hist(hist_matrix2.column_name)
生成此直方图:
和另一个具有相同数据的直方图,使用此代码按类分组:
hist_matrix2.groupby("number").column_name.plot.hist(alpha=0.5, bins = [0,5,10,15,20,25,30], stacked = True)
生成此直方图:
如您所见,尽管设置了参数,但类仍然存在,但没有堆叠。我可以做些什么来堆叠类?
最佳答案
plt.hist 有一个内置的堆叠标志,您可以设置:
plt.hist(hist_matrix2.column_name, stacked=True)
针对您的问题进行编辑,对于长数据(多层堆叠),您首先需要将数据重组为列表列表:
wide=hist_matrix2.pivot( columns='number', values='column_name')
#This creates many missing values which pandas does not like, so we drop them
widelist=[wide[col].dropna() for col in wide.columns]
# and the stacked graph is here
plt.hist(widelist,stacked=True)
plt.show()
关于python - 使用分组的 DataFrame 绘制堆叠直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45937358/