R语言学习case11:ggplot 置信区间(包含多子图)

ggplot Geometric objects

How are these two plots similar?

两个图都包含相同的x变量、相同的y变量,并且描述相同的数据。但是这两个图并不相同。每个图使用不同的可视化对象来表示数据。在ggplot2语法中,我们说它们使用不同的geoms。

geom是绘图使用的几何对象,用于表示数据。人们通常通过绘图使用的geom类型来描述图表。例如,柱状图使用bar geoms,折线图使用line geoms,箱线图使用boxplot geoms,以此类推。散点图打破了这个趋势;它们使用point geom。正如我们在上面看到的,您可以使用不同的geoms来绘制相同的数据。左侧的图使用point geom,右侧的图使用smooth geom,即对数据拟合的平滑曲线。

要更改图中的geom,请更改添加到ggplot()的geom函数。例如,要制作上面的图,您可以使用以下代码:

bash 复制代码
# left
ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy))

# right
ggplot(data = mpg) + 
  geom_smooth(mapping = aes(x = displ, y = hwy))

多子图绘制

bash 复制代码
library(gridExtra)

# left
plot1 <- ggplot(data = mpg) + 
  geom_point(mapping = aes(x = displ, y = hwy))

# right
plot2 <- ggplot(data = mpg) + 
  geom_smooth(mapping = aes(x = displ, y = hwy))

# 将2个图形组合成一个1x2的子图布局
grid.arrange(plot1, plot2, nrow = 1, ncol = 2)
相关推荐
不负岁月无痕10 分钟前
STL -- C++ 红黑树封装 Map 和 Set
java·c语言·开发语言·c++·面试
小园子的小菜14 分钟前
Java核心基础:反射与泛型底层原理及实战用法详解
java·开发语言
心中有国也有家16 分钟前
AtomGit Flutter 鸿蒙客户端:Flutter 鸿蒙应用的错误处理与优雅降级策略
学习·flutter·华为·harmonyos
2301_8002561130 分钟前
人工智能入门学习——ANN、CNN基本概念和考试核心代码
人工智能·学习·cnn
十五年专注C++开发40 分钟前
C++之std::numeric_limits介绍
开发语言·c++·limits
2501_9259633842 分钟前
Hi3516 + WS73 SDIO Wi-Fi 适配笔记
java·开发语言
CoderYanger44 分钟前
视频切割脚本(Python版)
linux·开发语言·windows·后端·python·程序人生·职场和发展
辞旧 lekkk1 小时前
CMake工程指南(一)
linux·运维·服务器·开发语言·qt·学习·萌新
小七在进步1 小时前
数据结构:用栈实现队列
开发语言·数据结构
KaMeidebaby1 小时前
卡梅德生物技术快报|噬菌体筛选:噬菌体筛选工程化优化方案:基于侵染全链条参数调控与水环境应用验证
java·开发语言·人工智能·机器学习·spark