【发布时间】:2020-10-10 03:55:31
【问题描述】:
如何在 plotly 中重现下图
library(dplyr)
library(ggplot2)
tibble(x =1:10, y = 1:10) %>%
ggplot(aes(x,y)) +
geom_line() +
scale_y_continuous(sec.axis = ~.*2)
我根据这个答案here尝试了以下代码
library(dplyr)
library(plotly)
tibble(x =1:10, y = 1:10) %>%
mutate(y2 = y*2) %>%
plot_ly() %>%
add_lines(x =~x, y =~y) %>%
add_lines(x= ~x, y=~y2,
yaxis = "y2", color = I("transparent"),
hoverinfo='skip', showlegend=FALSE) %>%
layout(yaxis2 = list(side = "right", overlaying = "y", showgrid = FALSE),
margin = list(r = 50))
虽然乍一看它似乎可以工作,但它只提供了部分解决方案,因为如果我以交互方式尝试更改生成图形上主(左)y 轴的比例(通过向上或向下拖动),右轴不随图形移动(因为它仅链接到第二个不可见图形)。这当然是不可接受的,因为它不允许可靠地使用 plotly 的任何交互功能,这就是我想用它而不是 ggplot 开始的原因。
编辑:刚刚意识到,在轴之间的非线性变换的情况下,这个情节解决方案似乎根本不起作用(而 ggplot 处理得很好)。
【问题讨论】: