提问人:Linus 提问时间:10/18/2023 更新时间:10/19/2023 访问量:54
使用基底 R 图并排绘制两个图,具有共享的 titel 和共享的 x 轴标签
Two plot side by side using base R plots, with shared titel and shared x-axis label
问:
我正在尝试使用基本 R 并排绘制两个图。
我希望他们共享标题以及 x 轴和 y 轴标签。 但是,图的范围不同,所以我想保留标签的数量。
我已经看到有一些解决方案使用 ,但是,它们似乎过于复杂。par()
我尝试了以下解决方案:layout()
dev.off()
# Create a layout with two plots
layout(matrix(c(1, 2), nrow = 1))
# Create the first plot
plot(1:10, 1:10, main = "Plot 1", type = "l", col = "blue", xlab = "")
# Create the second plot without the x-axis
plot(1:10, (1:10)^2, main = "", type = "l", col = "red", xlab = "")
# Draw the x-axis in the middle of the two plots
axis(side = 1, at = 5, labels = FALSE)
# Add labels to the x-axis if needed
mtext("Common X-axis Label", side = 1, line = 2)
# Reset the layout
layout(1)
但是,我无法将 x 轴标签和主标题放在情节的中心? 关于如何做到这一点的任何想法?
我尝试使用 将 x 轴标签放在两个图的中心。line = 2
现在它看起来像这样:
答:
5赞
Friede
10/18/2023
#1
这并不过于复杂。我想你正在寻找
outer = TRUE
这就可以了。
layout(matrix(c(1, 2), nrow = 1))
plot(1:10, 1:10, main = "", type = "l", col = "blue", xlab = "") # Create the first plot
plot(1:10, (1:10)^2, main = "", type = "l", col = "red", xlab = "") # Create the second plot
mtext("My Multiplot Title", side = 3, line = -2, outer = TRUE)
mtext("Common X-axis Label", side = 1, line = -2, outer = TRUE)
创建于 2023-10-18 使用 reprex v2.0.2
评论
0赞
Linus
10/18/2023
工程!我还有办法减少地块之间的距离吗?
1赞
Friede
10/18/2023
当然,替换为参数指定的向量中的第二个和第四个值并播放。请阅读帮助页面!layout(matrix(c(1, 2), nrow = 1))
par(mfrow = c(1, 2), mai = c(1, .4, 1, .4))
mai
评论