【发布时间】:2020-08-12 06:58:03
【问题描述】:
一般的想法是创建一个可以在显示计数和百分比之间切换的绘图图表。我可以使用 updatemenu 更改显示的轨迹,并且轴刻度可以动态更改,但是当我在下面的示例中切换到“%”时,图例消失了。
我根本不是阴谋专家,这就是我使用ggplotly() 的原因(我的真实示例更复杂,ggplolty() 效果很好!)我想知道是否必须手动添加图例to % traces (3, 4) 在第一条迹线不可见时显示图例?
library(ggplot2)
library(plotly)
df <- structure(list(outcome = c("a", "b", "a", "b", "a", "b", "a",
"b", "a", "b"), n = c(59, 191, 28, 67, 29, 56, 33, 45, 32, 40
), pct = c(0.208480565371025, 0.674911660777385, 0.288659793814433,
0.690721649484536, 0.337209302325581, 0.651162790697674, 0.4125,
0.5625, 0.444444444444444, 0.555555555555556), day = c(1L, 1L,
2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L)), class = "data.frame",
row.names = c(NA, -10L))
p <- ggplot(df, aes(day, n, color = outcome)) +
geom_line() +
geom_line(aes(y = pct))
ggplotly(p, dynamicTicks = TRUE) %>%
style(visible = FALSE, traces = 3:4) %>%
layout(
updatemenus = list(
list(
buttons = list(
list(args = list("visible", list(TRUE, TRUE, FALSE, FALSE)),
label = "n"),
list(args = list("visible", list(FALSE, FALSE, TRUE, TRUE)),
label = "%")
)
)
)
)
注意:这也发布在RStudio Community,但尚未收到任何答复。
【问题讨论】: