R图:子图仅显示底部图
我想为R图:子图仅显示底部图,r,r-plotly,R,R Plotly,我想为mtcars数据重现中的“缩放子地块” mtcars %>% transform(id = as.integer(factor(am))) %>% plot_ly(x = ~mpg, y = ~qsec, color = ~factor(vs), yaxis = ~paste0("y", id)) %>% add_markers() %>% subplot(nrows = 2, shareX = TRUE) 仅显示底部子批次: 我认为我确实忠实地
mtcars
数据重现中的“缩放子地块”
mtcars %>%
transform(id = as.integer(factor(am))) %>%
plot_ly(x = ~mpg, y = ~qsec, color = ~factor(vs), yaxis = ~paste0("y", id)) %>%
add_markers() %>%
subplot(nrows = 2, shareX = TRUE)
仅显示底部子批次:
我认为我确实忠实地复制/翻译了代码,但一定是出了什么问题。
值得注意的是,子批次区分am
,而颜色区分vs
。
我尝试了子批次和颜色的am
:
mtcars %>%
transform(id = as.integer(factor(am))) %>%
plot_ly(x = ~mpg, y = ~qsec, color = ~am, yaxis = ~paste0("y", id)) %>%
add_markers() %>%
subplot(nrows = 2, shareX = TRUE)
这没有多大帮助,但出现了两个网格:
在后一个示例中,我希望am==0
(蓝色)点位于顶部子批次中
有什么建议吗
packageVersion('plotly')
[1] ‘4.9.0’
好的,通过这种方式您可以这样做,但必须创建两个绘图,然后使用
subplot()
以下是输出:
谢谢你的建议(很抱歉迟到了)。然而,我的目标是在y轴上显示
qsec
。您似乎无法打印它,因为您已使用选择将其删除。不完全是。。。你正在绘制的是两个图上完全相同的点,有不同的颜色,对吗?我想要的是:上面,am
为0的汽车;下面是am
为1的车辆。我明白了吗?我的错,我忘了使用filter()
也许可以,但我还不知道怎么做。
p1 = mtcars %>%
filter(am==0) %>%
plot_ly(x = ~mpg, y = ~qsec, color = ~vs, legendgroup = "am0", name = "0",
type = "scatter" , mode = "markers", showlegend = FALSE)
p2 = mtcars %>%
filter(am==1) %>%
plot_ly(x = ~mpg, y = ~qsec, color = ~vs, legendgroup = "am1", name = "1",
type = "scatter" , mode = "markers")
subplot(p1,p2,nrows = 2, shareX = TRUE, titleY = TRUE, which_layout = 1)