前言
这里我先下结论:并不建议你拿下面这两个包作为你的绘图主力。
他们颜值高,而且用起来非常方便;但是,其语法与ggplot 绘图系统并不相同。
或者以我浅薄的认知来看,他们简单传参的语法甚至比ggplot 更通情达理。
但一旦你陷入这种打包好了的高级绘图函数的甜蜜时,你的想象力,你的绘图技能,也将止步在那里。
因此,我建议你先学会ggplot,再来用它们。
ggpubr
ggpubr 就是一个傻瓜版的ggplot,功能和细节相对少了很多,但代码也简洁了不少。
除此之外,ggpubr 还增加了ggsigif 包,可以进行简单统计分析绘图内容。
代码语言:javascript复制ggscatter(iris,x="Sepal.Length",
y="Petal.Length",
color="Species")
爱学的你可以看:R语言可视化学习笔记之ggpubr包 - 简书[1]
统计分析
可以在同一个函数内对参数进行赋值,实现各种复杂图形的绘制。
代码语言:javascript复制p <- ggboxplot(iris, x = "Species",
y = "Sepal.Length",
color = "Species",
shape = "Species",
add = "jitter")
my_comparisons <- list( c("setosa", "versicolor"),
c("setosa", "virginica"),
c("versicolor", "virginica") )
p stat_compare_means(comparisons = my_comparisons) # Add pairwise comparisons p-value
stat_compare_means(label.y = 9)
image.png
ggstatsplot
一文解决基本科研绘图需求(可视化神器ggstatsplot)(1)(概述) - 云 社区 - 腾讯云[2]
高颜值、高逼格了属于是。
代码语言:javascript复制# plot
ggstatsplot::ggwithinstats(
data = iris,
x = Species,
y = Sepal.Length,
sort = "descending", # ordering groups along the x-axis based on
sort.fun = median, # values of `y` variable
pairwise.comparisons = TRUE,
pairwise.display = "s",
pairwise.annotation = "p",
title = "iris",
caption = "Data from: iris",
ggtheme = ggthemes::theme_fivethirtyeight(),
ggstatsplot.layer = FALSE,
messages = FALSE
)
其实和ggplot 一样,都是作者打包好了其高颜值的ggplot 语法,然后写成传参函数方便你使用。
有相当多的绘图类型。
Function | Plot | Description | Lifecycle |
---|---|---|---|
ggbetweenstats | violin plots | for comparisons between groups/conditions | |
ggwithinstats | violin plots | for comparisons within groups/conditions | |
gghistostats | histograms | for distribution about numeric variable | |
ggdotplotstats | dot plots/charts | for distribution about labeled numeric variable | |
ggscatterstats | scatterplots | for correlation between two variables | |
ggcorrmat | correlation matrices | for correlations between multiple variables | |
ggpiestats | pie charts | for categorical data | |
ggbarstats | bar charts | for categorical data | |
ggcoefstats | dot-and-whisker plots | for regression models and meta-analysis |
ps:我觉得这个包的源代码也非常的值得学习!
两个包的官方教程
ggplot2 Based Publication Ready Plots • ggpubr[3]
ggplot2 Based Plots with Statistical Details • ggstatsplot[4]
参考资料
[1]R语言可视化学习笔记之ggpubr包 - 简书: https://www.jianshu.com/p/678213d605a5
[2]一文解决基本科研绘图需求(可视化神器ggstatsplot)(1)(概述) - 云 社区 - 腾讯云: https://cloud.tencent.com/developer/article/1450100
[3]ggplot2 Based Publication Ready Plots • ggpubr: https://rpkgs.datanovia.com/ggpubr/
[4]ggplot2 Based Plots with Statistical Details • ggstatsplot: https://indrajeetpatil.github.io/ggstatsplot/