将垂直虚线动态放置在最长条形图的末尾(plotly,python)

sy5wg1nm  于 2021-08-20  发布在  Java
关注(0)|答案(1)|浏览(244)

我画了一个水平条形图,如下所示。

这是我的代码:

import plotly.express as px
df = px.data.tips()
fig = px.bar(x=prices, y=['Average ', 'Lowest ', 'Last ', 
                          'Proposed '], 
      orientation='h',
      color = ['Average ', 'Lowest ', 'Last ', 'Proposed '])

fig.show()

现在我的目标是在最长的条的末端画一条垂直虚线,在这种情况下,最下面(平均)的条是最长的,但它可以在不同的运行中改变。我该怎么做?

yhqotfr8

yhqotfr81#

要绘制垂直线,请添加 add_vline() . 由于代码与您提供的数据不匹配,我根据官方参考中的示例创建了代码。即使更改为不同的条件,结果 Dataframe 的最大值也将用作垂直线的位置。请更改条件并检查它。

import plotly.express as px

df = px.data.gapminder().query("continent == 'Europe' and year == 2007 and pop > 2.e6")
fig = px.bar(df, y='country', x='pop', text='pop')
fig.add_vline(x=df['pop'].max(), line_width=2, line_dash='dash', line_color='red')
fig.show()

相关问题