Rdata in science第一章
1.install.packages("tidyverse")
library(tidyverse)
2.代码①
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy))
ggplot() 创建了一个坐标系,ggplot() 的第一个参数是要在图中使用的数据集。gplot(data = mpg)
函数 geom_point() 向图中添加一个点层,这样就可以创建一张散点图。
3.代码②
使用 hwy 和 cyl 绘制一张散点图。
ggplot(data = mpg) +
geom_point(mapping = aes(x = cyl, y = hwy))
4.代码③
如果使用 class 和 drv 绘制散点图
ggplot(data = mpg) +
geom_point(mapping = aes(x = class, y = drv))
5图形属性映射
代码④
mpg 数据集中的 class 变量对汽车进行了分类,比如小型、中型和 SUV。
向二维散点图中添加第三个变量,比如 class,方式是将它映射为图形属性。
将点的颜色映射为变量 class,从而揭示每辆汽车的类型
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy, color = class))
#颜色
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy), color = "blue")
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy),color = "green")
6.+ 号问题
(1)如果有一个 + 号,那么说明 R 认为你没有输入完整的表达式,正在等待你完成输入。
这种情况下,按 Esc 键中止当前执行的命令就可以重新开始
(2)将 + 号放错了位置:+ 必须放在一行代码的末尾,
7.分面
通过单个变量对图进行分面,可以使用函数 facet_wrap()。其第一个参数是一个公
式,创建公式的方式是在 ~ 符号后面加一个变量名
代码⑤
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy)) +
facet_wrap(~ class, nrow = 2)
代码⑥
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy)) +
facet_grid(drv ~ cyl)
8.几何对象:它们各自使用不同的可视化对象来表示数据。在 ggplot2 语法中,我们称它们使用了不同的几何对象。
代码⑦
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy))
代码⑧
ggplot(data = mpg) +
geom_smooth(mapping = aes(x = displ, y = hwy))
要想在同一张图中显示多个几何对象,可以向 ggplot() 函数中添加多个几何对象函数:
代码⑨
ggplot(data = mpg) +
geom_point(mapping = aes(x = displ, y = hwy)) +
geom_smooth(mapping = aes(x = displ, y = hwy))
将一组映射传递给 ggplot() 函数。ggplot2 会将这些映射作为全局映射应用到图中的每个几何对象中。
代码⑩
ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) +
geom_point() +
geom_smooth()
9.统计变换
stat(statistical transformation,统计变换)
每个统计变换函数都有一个默认几何对象 :geom_bar() 使用 stat_count()
代码①
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut))
代码②
ggplot(data = diamonds) +
stat_count(mapping = aes(x = cut))
10 位置调整
#用 color 或者 fill(这个更有用)图形属性来为条形图上色
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut, fill = cut))
#将 fill 图形属性映射到另一个变量(如 clarity),那么条形会自动分块堆叠
起来。每个彩色矩形表示 cut 和 clarity 的一种组合。
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut, fill = clarity))
#position = "fill" 的效果与堆叠相似,但每组堆叠条形具有同样的高度,因此这种条
形图可以非常轻松地比较各组间的比例:
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut, fill = clarity),position = "fill")
#position = "dodge" 将每组中的条形依次并列放置,这样可以非常轻松地比较每个条形表示的具体数值:
ggplot(data = diamonds) +
geom_bar(mapping = aes(x = cut, fill = clarity),position = "dodge")
11.坐标系
coord_flip() 函数可以交换 x 轴和 y 轴。
ggplot(data = mpg, mapping = aes(x = class, y = hwy)) +
geom_boxplot()
ggplot(data = mpg, mapping = aes(x = class, y = hwy)) +
geom_boxplot() +
coord_flip()
11.图形分层语法
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」