推荐一份ggplot2画图的学习资料

2020-11-13 09:55:51 浏览数 (1)

今天查资料的时候发现的,好多漂亮的图片,大部分都是借助ggplot2实现的。提供示例数据和代码。很好的R语言画图学习资料。链接是 https://www.datanovia.com/en/blog/ggplot-examples-best-reference/

这份学习资料里我比较感兴趣的是以下两幅图,第一幅是

image.png

这个和之前图文中 跟着Nature Couumincations学画图中的figure1很像。之前的figure1是借助基础绘图函数画了散点图和箱线图,然后将图拼接到一起。这个图的实现办法是直接用的一个函数。

使用到的R语言包时 ggpubr函数是ggscatterhist()

ggpubr这个包的参考链接 https://rpkgs.datanovia.com/ggpubr/index.html

安装

代码语言:javascript复制
install.packages("ggpubr")

上面的图用到的是鸢尾花数据集

最基本的绘图是

代码语言:javascript复制
library(ggpubr)
ggscatterhist(iris,
              x = "Sepal.Length", 
              y = "Sepal.Width")

需要指定数据集合x,y。x,y对应的数据需要用双引号引起来,边缘默认添加的图是密度图,可以用margin.plot参数来修改,更改填充颜色用到的是palette参数 下面是参考链接里的代码

代码语言:javascript复制
ggscatterhist(iris,
              x = "Sepal.Length", 
              y = "Sepal.Width",
              color = "Species",
              size=4,
              palette = c("#00AFBB", "#E7B800", "#FC4E07"),
              margin.plot = "boxplot",
              ggtheme = theme_bw(),
              margin.params = list(fill="Species"))

最终的结果是

image.png

还有一个比较感兴趣的是

image.png

非常适合来展示相关系数,比如用大小来展示相关系数的高低,用颜色来区分p值

下面重复参考链接中的代码 还是借助 ggpubr这个包中的函数实现。用到的函数是 ggballoonplot()读入数据

代码语言:javascript复制

画图

代码语言:javascript复制
ggballoonplot(housetasks, 
              fill = "value",
              size.range = c(1,15)) 
  scale_fill_viridis_c(option = "C")

0 人点赞