当前位置:网站首页>R语言中实现作图对象排列的函数总结
R语言中实现作图对象排列的函数总结
2022-04-23 15:47:00 【zoujiahui_2018】
文章目录
par(mfrow=c(n,m))基础作图
par(mfrowc(n,m))是R基础作图中的函数,只对基础作图函数plot的对象起作用
gridExtra::grid.arrange()针对ggplot对象
grid.arrange()函数只能用于对ggplot对象进行排布
用法
# 全部参数
grid.arrange(..., grobs = list(...), layout_matrix, vp = NULL,
name = "arrange", as.table = TRUE, respect = FALSE, clip = "off",
nrow = NULL, ncol = NULL, widths = NULL, heights = NULL, top = NULL,
bottom = NULL, left = NULL, right = NULL, padding = unit(0.5, "line"),newpage=TRUE)
#常用格式
grid.arrange(p1,p2,p3,...,ncol=n,nrow=m)
实例
library(gridExtra)
library(ggplot2)
p1=qplot(1:10, rnorm(10), main=paste("plot", 1))
p2=qplot(1:10, rnorm(10), main=paste("plot", 2))
p3=qplot(1:10, rnorm(10), main=paste("plot", 3))
grid.arrange(p1,p2,p3,nrow=2,ncol=2)
ggpubr::ggarrange()可处理ggplot对象和基础plot对象
用法
ggarrange(
...,
plotlist = NULL,
ncol = NULL,
nrow = NULL,
labels = NULL,
label.x = 0,
label.y = 1,
hjust = -0.5,
vjust = 1.5,
font.label = list(size = 14, color = "black", face = "bold", family = NULL),
align = c("none", "h", "v", "hv"),
widths = 1,
heights = 1,
legend = NULL,
common.legend = FALSE,
legend.grob = NULL
)
实例
library(ggplot2)
library(ggpubr)
data("ToothGrowth")
df <- ToothGrowth
df$dose <- as.factor(df$dose)
bxp <- ggboxplot(df, x = "dose", y = "len",
color = "dose", palette = "jco")
dp <- ggdotplot(df, x = "dose", y = "len",
color = "dose", palette = "jco")
dens <- ggdensity(df, x = "len", fill = "dose", palette = "jco")
plt<- ~{
par(
mar = c(3, 3, 1, 1),
mgp = c(2, 1, 0)
)
plot(sqrt)
}
# Arrange
# ::::::::::::::::::::::::::::::::::::::::::::::::::
ggarrange(bxp, dp,dens,plt, ncol = 2, nrow = 2)
cowplot::plot_grid()可以用于不同对象
用法
plot_grid(
...,
plotlist = NULL,
align = c("none", "h", "v", "hv"),
axis = c("none", "l", "r", "t", "b", "lr", "tb", "tblr"),
nrow = NULL,
ncol = NULL,
rel_widths = 1,
rel_heights = 1,
labels = NULL,
label_size = 14,
label_fontfamily = NULL,
label_fontface = "bold",
label_colour = NULL,
label_x = 0,
label_y = 1,
hjust = -0.5,
vjust = 1.5,
scale = 1,
greedy = TRUE,
byrow = TRUE,
cols = NULL,
rows = NULL
)
实例
library(ggplot2)
library(cowplot)
df <- data.frame(
x = 1:10, y1 = 1:10, y2 = (1:10)^2, y3 = (1:10)^3, y4 = (1:10)^4
)
p1 <- ggplot(df, aes(x, y1)) + geom_point()
p2 <- ggplot(df, aes(x, y2)) + geom_point()
p6 <- ~{
par(
mar = c(3, 3, 1, 1),
mgp = c(2, 1, 0)
)
plot(sqrt)
}
p7 <- function() {
par(
mar = c(2, 2, 1, 1),
mgp = c(2, 1, 0)
)
image(volcano)
}
# ggarrange(p1,p2,p3,p4)
# making rows and columns of different widths/heights
plot_grid(
p1, p2,p6,p7, nrow = 2,ncol=2,rel_heights = c(2,1), rel_widths = c(1, 2),labels = "AUTO",scale = c(1, .5, .9, .7)
)
#' # missing plots in some grid locations, auto-generate lower-case labels
plot_grid(
p1, NULL, NULL, p6, p7, NULL,
ncol = 2,
labels = "auto",
label_size = 12,
align = "v"
)
customLayout::lay_new()功能更加强大灵活
未完待续…
版权声明
本文为[zoujiahui_2018]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_18055167/article/details/124337417
边栏推荐
猜你喜欢
随机推荐
MySQL optimistic lock to solve concurrency conflict
基础贪心总结
时序模型:门控循环单元网络(GRU)
Code live collection ▏ software test report template Fan Wen is here
gps北斗高精度卫星时间同步系统应用案例
为啥禁用外键约束
pywintypes. com_ Error: (- 2147221020, 'invalid syntax', none, none)
字符串排序
Pytorch中named_parameters、named_children、named_modules函数
Redis master-slave replication process
贫困的无网地区怎么有钱建设网络?
fatal error: torch/extension. h: No such file or directory
字符串最后一个单词的长度
Named in pytoch_ parameters、named_ children、named_ Modules function
Sorting and replying to questions related to transformer
Special analysis of China's digital technology in 2022
String sorting
Go并发和通道
Single architecture system re architecture
Upgrade MySQL 5.1 to 5.68