在情节堆积条形图中仅显示一行 df

Posted

技术标签:

【中文标题】在情节堆积条形图中仅显示一行 df【英文标题】:Show only one row of df in plotly stacked bar chart 【发布时间】:2021-07-29 14:03:19 【问题描述】:

我有一个 pandas 数据框,我想将其中的一行显示为堆积条形图。 我设法显示了所有行,但我不知道如何只显示一行。

这就是我所拥有的:

import pandas as pd
import plotly.express as px

data = "2020-11": -1, "2020-12": -2, '2021-01': -3
df = pd.DataFrame('category 0': data,
                   'category 2': data,
                   'category 3': data)

fig = px.bar(df,
             x=df.index,
             y=[c for c in df.columns],
             )
fig.show()

这是我得到的:

这是我真正想要的:

我尝试了什么:

fig = px.bar(df,
             x=df.loc["2020-12"],
             y=[c for c in df.columns],
             )

-> 但随后它将所有行堆叠在一起

fig = px.bar(df.loc["2020-12"],
             x=df.index,
             y=[c for c in df.columns],
             )

->完全错误

以及我能想到的所有其他组合。

请帮忙。

额外问题: 我怎样才能使酒吧向上而不是向下?

【问题讨论】:

【参考方案1】:

让我们尝试一下:

import pandas as pd
import plotly.express as px

data = "2020-11": -1, "2020-12": -2, '2021-01': -3
df = pd.DataFrame('category 0': data,
                   'category 2': data,
                   'category 3': data)

# Filter Where Index is Desired Value
plot_df = df[df.index == '2020-12']

fig = px.bar(
    plot_df,
    x=plot_df.index,
    y=[c for c in df.columns],
)
fig.show()

【讨论】:

以上是关于在情节堆积条形图中仅显示一行 df的主要内容,如果未能解决你的问题,请参考以下文章

spss如何删除堆积条形图中的某块数据

spss如何删除堆积条形图中的某块数据

Google图表(可视化)中堆积条形图中的第三个条形图无效

Pandas - 绘制堆积条形图

Plotly:仅在特定子图中堆积条形图

Python:基于同一DF中多列值的堆积条形图[重复]