轻松显示绘图表达条形图的平均值

问题描述

Plotly Express 的条形图认堆叠观察值,显示总和。

import seaborn as sns
import plotly.express as px

df =sns.load_dataset("penguins")

px.bar(data_frame=df,x="species",y="bill_depth_mm")

我正在尝试显示每个物种的均值,这是大多数其他流行的 Python 库返回的值。

我可以手动计算每个物种的平均值并制作新的字典/数据框。但是我觉得应该有一种简单的方法可以直接从 Plotly 显示均值。

我已经检查了文档并且没有运气。我错过了什么?

解决方法

我认为你没有遗漏任何东西。我想 Plotly 开发人员的想法是,传递给 px.bar 方法的 DataFrames 每个唯一类别都有一个 y 值,正如 this documentation 显示的 Plotly Express 如何处理长格式或宽格式数据所证明的那样。在奖牌数据集中,有 9 个不同类别的 9 个条形。

正如您所说,这意味着您需要计算每个独特物种的平均值,这可以通过将数据帧的分组平均值直接传递给 data_frame 参数来实现,即使它不是最优雅。

fig = px.bar(
    data_frame=df.groupby(['species']).mean().reset_index(),x="species",y="bill_depth_mm"
)

enter image description here

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...