快速了解R语言ggplot2绘图逻辑

今天分享关于ggplot2的绘图思想和关键技巧!R语言中ggplot2的安装率很高,就像中国手机用户中微信的安装率一样,大家在使用R语言中绘图时,也会经常用到这款功能强大的R包,下面将是使用ggplot2绘制的部分示例图片。

alt

在R语言中,ggplot2 包包含了一套全面而连贯的语法的绘图系统,弥补了基础R中创建图形缺乏一致性的缺点,方便了科研工作者和数据分析人员的操作使用。

核心理念:将绘图与数据分离,数据相关的绘图与数据无关的绘图分离,按图层作图,就像搭积木一样。

# 一个简单的ggplot2绘图命令:
ggplot(data= iris, aes(x = Sepal.Length, y = Sepal.Width)) +  #绘制底层画布
geom_point()  #在画布上添加点

ggplot2语句可以理解为一句语句绘制一幅图,然后进行图层叠加,而叠加是通过”+“号把绘图语句拼接实现的。

ggplot函数包括9个部件

  • 数据 (data)
  • 映射 (mapping)
  • 几何对象 (geom_xx)
  • 统计变换 (stats)
  • 标度 (scale)
  • 坐标系 (coord)
  • 分面 (facet)
  • 主题 (theme)
  • 存储和输出 (output)

前三个是必需的,Hadley大神将这套可视化语法诠释为:一张统计图形就是从数据到几何对象(geometric object,缩写geom)的图形属性(aesthetic attribute,缩写aes)的一个映射

alt

此外,图形中还可能包含数据的统计变换(statistical transformation,缩写stats),最后绘制在某个特定的坐标系(coordinate system,缩写coord)中,而分面(facet)则可以用来生成数据不同子集的图形。

alt

通常情况下,我们只需要关注数据和映射关系,可以先做出基础版的结果,然后再灵活的添加颜色映射、修改填充背景等,最后还可以修改字体主题等细节。一副完整的作品离不开精雕细琢,一个好看的ggplot2图片离不开图层的映射。

alt

举个例子

ggplot(data = iris, mapping = aes(Petal.Length,Petal.Width)) +
  geom_point(size = 2,alpha = 0.5,col ="red") +
  geom_smooth(method = "lm",se = F)

以上是一个简单的示例,翻译成人话将是:使用iris数据绘制散点图,使用Length作为x轴,Width作为y轴,绘制红色半透明的散点图,然后再绘制一条lm的拟合曲线,不显示置信区间。

alt
参考资料
https://liangliangzhuang.github.io/R-tutorial/ggplot2-plot.html
https://cloud.tencent.com/developer/article/1674158
https://bookdown.org/wangminjie/R4DS/

本文由 mdnice 多平台发布

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

生信分析笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值