Using seaborn barplot to plot wide-form dataframes(利用海运条形图绘制宽幅数据帧)
本文介绍了利用海运条形图绘制宽幅数据帧的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试生成一个条形图,其中包含我的DataFrame中的所有观察结果,如下所示:Dataframe(行=年,列=对象,值=对象在年的冲突)
使用默认 pandas 时,我获得了正确的图形类型plot:
cluster_yearly_results_df.plot.bar()
Correct Bar Plot
但是,我想使用海运,但在输入宽格式数据帧时遇到问题,使用:
sns.barplot(data=cluster_yearly_results_df)
我可以使用海运来做我想做的事情吗?
推荐答案
seaborn.barplot文档说明:
换句话说,其目的是用表示条形图用每个矩形的高度表示数值变量的中心趋势估计,并使用误差条提供有关该估计的不确定性的某些指示。
mean的单个条和表示std的错误条表示一个变量的多个值。您希望像pandas.plot.bar()那样用条形图表示单个值。
说到这里,您可以调整您的DataFrame,如下所示以匹配seaborn界面。以与您的DataFrame类似的DataFrame开头:
df = pd.DataFrame(np.random.randint(low=0, high=10, size=(10, 3)), columns=list('ABC'))
A B C
0 7 6 4
1 3 5 9
2 3 0 5
3 0 1 3
4 9 7 7
使用.stack()和.reset_index()创建两列,唯一标识y中的每个值:
df = df.stack().reset_index()
df.columns = ['x', 'hue', 'y']
哪个选项产生:
x hue y
0 0 A 6
1 0 B 1
2 0 C 2
3 1 A 5
4 1 B 7
然后绘制:
sns.barplot(y='y', x='x', hue='hue', data=df)
这篇关于利用海运条形图绘制宽幅数据帧的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:利用海运条形图绘制宽幅数据帧
基础教程推荐
猜你喜欢
- Python,确定字符串是否应转换为 Int 或 Float 2022-01-01
- 对多索引数据帧的列进行排序 2022-01-01
- kivy 应用程序中的一个简单网页作为小部件 2022-01-01
- Python 中是否有任何支持将长字符串转储为块文字或折叠块的 yaml 库? 2022-01-01
- 在 Django Admin 中使用内联 OneToOneField 2022-01-01
- matplotlib 设置 yaxis 标签大小 2022-01-01
- 比较两个文本文件以找出差异并将它们输出到新的文本文件 2022-01-01
- 在 Python 中将货币解析为数字 2022-01-01
- Kivy 使用 opencv.调整图像大小 2022-01-01
- 究竟什么是“容器"?在蟒蛇?(以及所有的 python 容器类型是什么?) 2022-01-01
