- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是 plotly 新手。我正在尝试创建一个计数图。我正在读取数据框,这是数据框中我的列和值。
名称缺陷严重程度
用户1媒体
用户1媒体
用户1高
用户2高
这是我希望最终图表的显示方式
有人可以建议我如何在 Plotly 中编码吗?
最佳答案
在 pandas groupby
的帮助下,只需两行代码即可完成此操作和 plotly 的barmode
属性。
Plotly的条形图有一个特定的属性来控制如何显示条形,它叫做barmode
,引用API文档:
barmode: str (default
'relative'
)One of'group'
,'overlay'
or'relative'
In'relative'
mode,bars are stacked above zero for positive values and below zero fornegative values. In'overlay'
mode, bars are drawn on top of oneanother. In'group'
mode, bars are placed beside each other.
请参阅bar chart documentation例如。
现在,举个例子:
# import needed libraries
import pandas as pd
import plotly.express as px
# some dummy dataset
df = pd.DataFrame(
{
"Name": ["User1", "User1", "User1", "User2"],
"Defect severity": ["Medium", "Medium", "High", "High"],
}
)
您需要按 Name
进行分组和Defect severity
列,然后使用 count
聚合函数(我建议你看看这个 question )
df = df.groupby(by=["Name", "Defect severity"]).size().reset_index(name="counts")
数据现在如下所示:
最后,您可以使用绘图条形图:
px.bar(data_frame=df, x="Name", y="counts", color="Defect severity", barmode="group")
图表将是:
给你!只需两行代码,您就得到了一个漂亮的分组条形图。
关于python - 如何在plotly中制作countplot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52467562/
我是一名优秀的程序员,十分优秀!