R 中混合多个图形的轴标题对齐
Axis title alignment with mixed multiple graphs in R
我正在使用 ggplot2
包来制作图表。我有 2 个图表,我使用 cowplot
包中的 plot_grid()
进行混合。
library(ggplot2)
library(cowplot)
x1 <- c(52.67, 46.80, 41.74, 40.45)
y1 <- c(1.726219351, 1.842421805, 1.790801758, 1.449997494)
x2 <- c(51.07, 65.97, 61.01, 49.25)
y2 <- c(5.39765063, 0.215293169, 0.694595893, 1.501089083)
DF <- data.frame(x1, y1, x2, y2)
p1 <- ggplot(DF, aes(x1, y1)) +
geom_point() +
theme(aspect.ratio = 1)
p2 <- ggplot(DF, aes(x2, y2)) +
geom_point() +
theme(aspect.ratio = 1)
plot_grid(p1, p2)
plot_grid(p1, p2, align = "hv")
第二张图的 y 轴 (p2
) 比绘图的 y 轴大 p1
(图中的红线),所以我使用了 align
,来自 cowplot
包。但是,y 轴标签与原始绘图 (p2
) 大小保持相同的位置(图像中的蓝线)。有没有办法让标签像原图一样靠近y轴?
对齐具有固定轴比的图表可能很困难。在任何情况下,如果除了 align
之外还使用 axis
参数,则一切正常。有关详细信息,请参见此处:https://wilkelab.org/cowplot/articles/aligning_plots.html
library(ggplot2)
library(cowplot)
#>
#> ********************************************************
#> Note: As of version 1.0.0, cowplot does not change the
#> default ggplot2 theme anymore. To recover the previous
#> behavior, execute:
#> theme_set(theme_cowplot())
#> ********************************************************
x1 <- c(52.67, 46.80, 41.74, 40.45)
y1 <- c(1.726219351, 1.842421805, 1.790801758, 1.449997494)
x2 <- c(51.07, 65.97, 61.01, 49.25)
y2 <- c(5.39765063, 0.215293169, 0.694595893, 1.501089083)
DF <- data.frame(x1, y1, x2, y2)
p1 <- ggplot(DF, aes(x1, y1)) +
geom_point() +
theme(aspect.ratio = 1)
p2 <- ggplot(DF, aes(x2, y2)) +
geom_point() +
theme(aspect.ratio = 1)
plot_grid(p1, p2, align = "hv", axis = "tbrl")
由 reprex package (v0.3.0)
于 2019-07-26 创建
我正在使用 ggplot2
包来制作图表。我有 2 个图表,我使用 cowplot
包中的 plot_grid()
进行混合。
library(ggplot2)
library(cowplot)
x1 <- c(52.67, 46.80, 41.74, 40.45)
y1 <- c(1.726219351, 1.842421805, 1.790801758, 1.449997494)
x2 <- c(51.07, 65.97, 61.01, 49.25)
y2 <- c(5.39765063, 0.215293169, 0.694595893, 1.501089083)
DF <- data.frame(x1, y1, x2, y2)
p1 <- ggplot(DF, aes(x1, y1)) +
geom_point() +
theme(aspect.ratio = 1)
p2 <- ggplot(DF, aes(x2, y2)) +
geom_point() +
theme(aspect.ratio = 1)
plot_grid(p1, p2)
plot_grid(p1, p2, align = "hv")
第二张图的 y 轴 (p2
) 比绘图的 y 轴大 p1
(图中的红线),所以我使用了 align
,来自 cowplot
包。但是,y 轴标签与原始绘图 (p2
) 大小保持相同的位置(图像中的蓝线)。有没有办法让标签像原图一样靠近y轴?
对齐具有固定轴比的图表可能很困难。在任何情况下,如果除了 align
之外还使用 axis
参数,则一切正常。有关详细信息,请参见此处:https://wilkelab.org/cowplot/articles/aligning_plots.html
library(ggplot2)
library(cowplot)
#>
#> ********************************************************
#> Note: As of version 1.0.0, cowplot does not change the
#> default ggplot2 theme anymore. To recover the previous
#> behavior, execute:
#> theme_set(theme_cowplot())
#> ********************************************************
x1 <- c(52.67, 46.80, 41.74, 40.45)
y1 <- c(1.726219351, 1.842421805, 1.790801758, 1.449997494)
x2 <- c(51.07, 65.97, 61.01, 49.25)
y2 <- c(5.39765063, 0.215293169, 0.694595893, 1.501089083)
DF <- data.frame(x1, y1, x2, y2)
p1 <- ggplot(DF, aes(x1, y1)) +
geom_point() +
theme(aspect.ratio = 1)
p2 <- ggplot(DF, aes(x2, y2)) +
geom_point() +
theme(aspect.ratio = 1)
plot_grid(p1, p2, align = "hv", axis = "tbrl")
由 reprex package (v0.3.0)
于 2019-07-26 创建