【发布时间】:2021-02-11 03:11:05
【问题描述】:
我在谷歌搜索时没有找到以下问题的答案:
问题:如何找到由plot_ly 创建的元素的轴限制(它必须隐藏在那里、某处或?)?
背景:
我正在使用 plot_ly 创建许多不同的时间线,并且我还会定期使用新数据更新它们。fig <- plot_ly(....)
现在我想将图中的几个里程碑标记为垂直线。 到目前为止,我还没有找到如何在 plot_ly 中“abline” - 没有给出最大 x 值的数字。
由于我经常更新,图中的最大值可能会随着新数据的变化而变化。
出于多种原因,我想避免在情节的所有几个不同时间线上运行max。
非常感谢!
代码示例:
fig <- plot_ly(df_timeseries, x = ~date)
fig <- fig %>% add_trace(y = ~count_mice, name = "Counts of mice",
mode = 'lines+markers' )
fig <- fig %>% add_trace(y = ~count_cats, name = "Counts of cats",
mode = 'lines+markers' )
fig <- fig %>% layout(title = "<b>Count of specimen</b>",
yaxis = list (title = "count"),
xaxis = list (title = "date"))
# and here is the problem. I want to add a vertical line, without having to specify y1
fig.update_layout(shapes=[
dict(
type= 'line',
yref= 'paper', y0= 0, y1= 100,
xref= 'x', x0= as.Date("2020-08-04"), x1= as.Date("2020-08-04")
)
fig
【问题讨论】:
-
你能添加一个可重现的例子吗?我没有遵循您要查找的内容。也许这只是我。您想知道如何设置坐标限制吗?还是添加垂直线?还是两者兼而有之?
-
亲爱的@hmhensen,感谢您的回复。是的,我只想添加垂直线而不必指定最大值。我需要根据客户的意愿反复更改情节。新数据会定期出现。因此,我不想在我正在绘制的所有列上运行“max”,因为我也必须记住更改最大值。这很容易出错,我认为这是不好的做法。