我用下面的代码制作了一个折线图,我试图在 y=1 处添加一条水平线。我尝试按照 plotly 网站上的说明进行操作,但它仍然没有显示。有谁知道为什么?
date = can_tot_df.date
growth_factor = can_tot_df.growth_factor
trace0 = go.Scatter(
x=date,
y=growth_factor,
mode = 'lines',
name = 'growth_factor'
)
fig = go.Figure()
fig.add_shape(
type='line',
x0=date.min(),
y0=1,
x1=date.max(),
y1=1,
line=dict(
color='Red',
)
)
data = [trace0]
iplot(data)
原文由 gboge 发布,翻译遵循 CC BY-SA 4.0 许可协议
简短的回答和一般的解决方案:
有关 OP 问题的详细信息和细节
如果没有数据样本,很难 准确 判断问题出在哪里。我 可以确定 的是,您缺少参数
xref
和x
yref
以指定该线是作为您的y
的单位绘制的---
轴。从您的示例代码来看,这就是您想要执行的操作,因为您要根据日期指定 x 值。此外,对于较新版本的 plotly,您无需担心
iplot
。您只需运行fig.show()
即可轻松显示图表。下面的图和代码示例将向您展示如何使用fig.show()
以及如何根据轴单位定义线。阴谋:
代码:
xref='x'
的替代方案是xref='paper'
。现在您可以将x0
指定为0
和1
之间的浮点数,从绘图的开始到结束。