58-R可视化-7-用ggpubr与ggstatsplot快速出高颜值图

2021-12-17 10:55:58 浏览数 (1)

前言

这里我先下结论:并不建议你拿下面这两个包作为你的绘图主力。

他们颜值高,而且用起来非常方便;但是,其语法与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/

0 人点赞