作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 ggplot 中,我想创建一个 y 轴自由的小平面网格。此 scales
选项在 facet_wrap()
中可用,但我想保留网格布局。我附上了我想要的示例。
编辑:我为 calrity 添加了一些代码
# Create data
nX <- 3
nY <- 3
nVal <- 2
df <- data.frame(M = sort(rep(paste0("M",1:nX), nVal * nY)),
n = rep(sort(paste0("n",rep((1:nY)-1, nVal))),nX),
G = rep(1:2,nX * nY),
val = c(100,300,20,10,1,2,10,25,NA,NA,0.1,0.2,25,27,2,5,0.5,0.6))
# Delete observations to resemble my data
df <- subset(df, !is.na(val))
# scales does not work in facet_grid(), thus obscuring trends for low values
ggplot(df, aes(x = G,
y = val)) +
geom_line()+
ylim(0,NA)+
facet_grid(n ~ M,scales = "free_y")
请注意,低值没有趋势可见,因为在网格中它们被高值遮盖了。
# the grid is lost in facet_wrap()
ggplot(df, aes(x = G,
y = val)) +
geom_line()+
ylim(0,NA)+
facet_wrap(n+M~.,scales = "free_y")
请注意,网格布局丢失了。
最佳答案
ggh4x 的 dev/github 版本有 facet_grid2()
这允许在网格布局中使用这些独立的轴。 (免责声明:我是 ggh4x 的作者。)如果您发现任何错误或不清楚的文档,请随时在 github 上留下问题,因为我认为这没有经过大量现场测试。
library(ggplot2)
library(ggh4x) # devtools::install_github("teunbrand/ggh4x")
# Create data
nX <- 3
nY <- 3
nVal <- 2
df <- data.frame(M = sort(rep(paste0("M",1:nX), nVal * nY)),
n = rep(sort(paste0("n",rep((1:nY)-1, nVal))),nX),
G = rep(1:2,nX * nY),
val = c(100,300,20,10,1,2,10,25,NA,NA,0.1,0.2,25,27,2,5,0.5,0.6))
# Delete observations to resemble my data
df <- subset(df, !is.na(val))
# scales does not work in facet_grid(), thus obscuring trends for low values
ggplot(df, aes(x = G,
y = val)) +
geom_line()+
ylim(0,NA)+
facet_grid2(n ~ M,scales = "free_y", independent = "y")
由 reprex package 创建于 2021-06-09 (v1.0.0)
关于r - ggplot : create a facet grid with free scales,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67901691/
我是一名优秀的程序员,十分优秀!