R语言ggplot2做云雨图的简单小例子

2021-07-30 10:43:19 浏览数 (1)

云雨图的样子如下

是一半的小提琴图加散点图的组合,看起来有些像云朵加雨滴的形式,所以得名云雨图,主要的作用还是用来展示数据的分布情况

之前看到过相关推文进行介绍,大部分的推文介绍的实现办法都是使用gghalves包,这个包中的函数可以将ggplot2的常规图形只画其中的一般,比如

  • geom_half_boxplor()
  • geom_half_violin()

最近在一个介绍ggplot2扩展包的链接里发现了一个包叫see,这个包里有一个函数是geom_violindot()函数,画云雨图非常方便,下面简单介绍一下代码

首先是安装see这个R包
代码语言:javascript复制
install.package("see")
使用鸢尾花的数据集作图
代码语言:javascript复制
library(ggplot2)
library(see)

ggplot(iris, aes(x = Species,
                 y = Sepal.Length, 
                 fill = Species))  
  geom_violindot()  
  theme_modern()

默认配色如下

现在的状态是垂直,不像云朵加雨滴,如果需要改成水平,加一个coord_flip()函数就好

代码语言:javascript复制
ggplot(iris, aes(x = Species,
                 y = Sepal.Length, 
                 fill = Species))  
  geom_violindot()  
  theme_modern() 
  coord_flip()

see这个包里还提供了许多新的配色方案,通过help(package="see")命令查看帮助文档,以scale开头的函数有很多

试了其中的几个,发现这个配色还挺好看的

代码语言:javascript复制
ggplot(iris, aes(x = Species,
                 y = Sepal.Length, 
                 fill = Species))  
  geom_violindot()  
  theme_modern() 
  coord_flip() 
  scale_fill_material()

0 人点赞