Python 绘制横穿条形图多条记录道的恒定红线
我想在整个条形图上画一条不变的红线,表示平均值。这是一个MRE。因此,想象一下,每个图表都有一条红色虚线,横穿60度。但我不想让更多条线的图表像现在这样挤在一起。现在,红线将选项条挤在一起,这样红线可以穿过x1的整个长度,所以x2的输出看起来很糟糕Python 绘制横穿条形图多条记录道的恒定红线,python,plotly,bar-chart,Python,Plotly,Bar Chart,我想在整个条形图上画一条不变的红线,表示平均值。这是一个MRE。因此,想象一下,每个图表都有一条红色虚线,横穿60度。但我不想让更多条线的图表像现在这样挤在一起。现在,红线将选项条挤在一起,这样红线可以穿过x1的整个长度,所以x2的输出看起来很糟糕 import plotly.graph_objects as go x1 = ['Alfred', 'Bob', "Cory", "Dave", "Eric", "Freddy&
import plotly.graph_objects as go
x1 = ['Alfred', 'Bob', "Cory", "Dave", "Eric", "Freddy", "Gary"]
x2 = ['Annie', "Barbara"]
y1 = [20, 30, 25, 40, 50, 60, 85]
y2 = [50, 70]
average = 60
fig = go.Figure()
fig.add_trace(go.Bar(x=x1, y=y1))
fig.add_trace(go.Bar(x=x2, y=y2, visible=False))
fig.add_shape(
type='line', line=dict(dash='dot', color='red'),
x0=-1, x1=len(x1), y0=average, y1=average
)
fig.update_layout(
updatemenus=[go.layout.Updatemenu(
active=0,
buttons=list([
dict(label="1",
method="update",
args=[{'visible':[False,True]}]),
dict(label="2",
method="update",
args=[{'visible':[True,False]}]),]))])
在
fig.update\u layout()
因为不同的下拉菜单有不同数量的条,所以是否可以在不让条聚集的情况下执行此操作?比如将x1的长度设置为从轨迹开始?我想你需要阅读文档,看看有没有办法做到这一点。
fig.add_shape(
type='line', line=dict(dash='dot', color='red'),
x0=-1, x1=len(x1), y0=average, y1=average
)