R语言绘制散点图

ops/2024/10/11 2:38:06/

散点图是一种在直角坐标系中用数据点直观呈现两个变量之间关系、可检测异常值并探索数据分布的可视化图表。它是一种常用的数据可视化工具,我们通过不同的参数调整和包的使用,可以创建出满足各种需求的散点图。

常用绘制散点图的函数有plot()函数和ggplot2这个R包首先我们来了解一下plot函数的绘制。

0x01 plot()函数

1.使用 plot()函数绘制基本散点图。

x <- c(1, 2, 3, 4, 5)
y <- c(2, 4, 6, 8, 10)
plot(x, y)

2.可以添加标题、坐标轴标签、点的形状、点的大小、颜色等。

plot(x, y, main = "Scatter Plot", xlab = "X Axis", ylab = "Y Axis")

主要参数:
type:指定图形的类型。
main:设置标题
sub:设置副标题
xlab、ylab:设置x、y轴标题
col:设置图形的颜色
cex:设置点的大小
pch:设置点的形状
lwd:设置点边框/线的宽度
xlim、ylim:设置坐标轴区间的范围
legend():在图形中添加图例。
points():在原有图形上添加点

type常见的取值有:
“p”:点(默认值)。
“l”:线。
“b”:同时有点和线。
“o”:点覆盖在线上。
“h”:直方图式的垂直线。
“s”:阶梯图。
“n”:不绘制任何图形,但设置坐标轴范围,通常用于后续添加图形。

PCH对照表

0x02 使用 ggplot2包

1.首先加载 ggplot2包。

library(ggplot2)

2使用 ggplot()函数创建绘图对象,然后添加 geom_point()层来绘制散点图。

# 创建示例数据
data <- data.frame(x = c(1, 2, 3, 4, 5),y = c(5, 4, 3, 2, 1),category = c("A", "B", "A", "B", "A")
)# 使用 ggplot2 绘制散点图
ggplot(data, aes(x = x, y = y, color = category)) +geom_point() +labs(title = "Scatter Plot with ggplot2", x = "X Axis", y = "Y Axis")

ggplot2包提供了更强大的自定义功能,可以调整点的颜色、大小、形状等属性,以及添加拟合线、平滑曲线等。

一、基本图形参数
1.data:指定用于绘图的数据框。
2.mapping:通常通过aes()函数指定,用于将数据变量映射到图形的美学属性上,如aes(x = var1, y = var2, color = var3)
3.geom:指定几何对象,如geom_point()表示绘制散点图,geom_line()表示绘制线图等。

二、图形外观参数
1.color:设置图形元素的颜色,如线条颜色、点的颜色等。可以是单一颜色名称(如 “red”)或根据数据变量动态分配颜色。
2.fill:用于填充图形元素的内部颜色,如柱状图的柱子填充颜色。
3.size:设置点的大小、线条的粗细等。
4.alpha:设置图形元素的透明度,取值范围从 0(完全透明)到 1(完全不透明)。
5.shape:设置指定图形中点的形状。
6.scale_*:用于控制图形的各种属性的标度,如scale_color_*:用于控制颜色的标度,scale_color_manual() 允许你手动指定颜色映射,scale_color_gradient() 用于创建连续的颜色渐变。

三、坐标轴参数
1.xlimylim:分别设置横坐标和纵坐标的范围。例如xlim = c(0, 10)设置横坐标范围为 0 到 10。
2.xlabylab:分别设置横坐标和纵坐标的标签。
3.scale_x_*scale_y_*:用于定制坐标轴的刻度、类型等。例如scale_x_log10()将横坐标设置为对数刻度。

四、标题和标签参数
1.ggtitle:设置图形的标题。
2.labs:可以一次性设置多个标签,如labs(title = "My Plot", x = "X Axis Label", y = "Y Axis Label")

五、主题参数
1.theme:用于定制图形的整体外观,包括背景颜色、网格线、字体等。例如theme_minimal()使用简约主题。
2.theme_void:去除所有的背景元素和坐标轴,只显示数据元素。

六、分面参数
facet_wrapfacet_grid:用于将图形按照一个或多个变量进行分面展示,以便更好地比较不同组的数据。例如facet_wrap(~category)将图形按照category变量进行分面。

这只是ggplot2的一部分参数,通过灵活组合这些参数,可以创建出各种精美的可视化图形。
shape对照表


http://www.ppmy.cn/ops/123765.html

相关文章

MyBatis 数据表与实体映射的隐藏陷阱

这两天在处理一个线上问题时&#xff0c;发现Mybatis数据表和实体映射的时候会埋一个坑。这个问题看似微小&#xff0c;但却可能在关键时刻给我们带来不小的困扰。接下来&#xff0c;让我们深入剖析这个问题&#xff0c;并探究其发生的根源。 一、问题描述 我们在使用 Mybati…

Springboo通过http请求下载文件到服务器

这个方法将直接处理从URL下载数据并将其保存到文件的整个过程。下面是一个这样的方法示例&#xff1a; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection…

git fetch 和 git pull 的区别

git fetch 和 git pull 的区别 git fetch 功能&#xff1a;git fetch 用于从远程仓库获取最新的代码和提交信息&#xff0c;并将其保存到本地仓库的相应远程跟踪分支中&#xff0c;不会自动合并或修改当前的工作目录或当前分支。 合并&#xff1a;此命令不会自动合并获取的更新…

vue双向绑定/小程序双向绑定区别

Vue双向绑定与小程序双向绑定在实现方式、语法差异以及功能特性上均存在显著区别。以下是对这两者的详细比较&#xff1a; 一、实现方式 Vue双向绑定 Vue的双向绑定主要通过其响应式数据系统实现。Vue使用Object.defineProperty()方法&#xff08;或在Vue 3中使用Proxy对象&am…

使用axios封装AJAX

一 、Http 请求报文 包括了三部分: 求情行、请求头,请求体。 1、请求行: 是HTTP请求的第一行,包含了请求方法、请求目标和HTTP协议版本。常用的请求方法有GET、POST、PUT、DELETE等,用于指定客户端希望服务器执行的操作。请求目标是指请求的资源路径,可以是一个具体的…

大贤3D家谱-一键寻找家谱本源

点击“溯”&#xff0c;您可以追溯到当前节点的家谱本源。 这一功能将帮助您更深入地了解家族的历史和背景。 通过这一操作&#xff0c;系统会自动标注出与您当前节点相关的祖先信息&#xff0c;并以金色字体突出显示&#xff0c;便于您快速识别和查看。 演示如下&#xff1…

matlab初学习记录

文章目录 内置函数与变量matlab 编辑器数组等间距向量数组函数数组索引提取多个元素 对向量执行数组计算查看文档 画图添加注释 实践导入数据关系运算符分支恒星运动 matlab 学习看入门之旅 先计算等号右边再计算等号左边。 工作区记录等号右边的变量。 ; 表示的是抑制输出。…

基于 CSS Grid 的简易拖拉拽 Vue3 组件,从代码到NPM发布(1)- 拖拉拽交互

基于特定的应用场景&#xff0c;需要在页面中以网格的方式&#xff0c;实现目标组件在网格中可以进行拖拉拽、修改大小等交互。本章开始分享如何一步步从代码设计&#xff0c;最后到如何在 NPM 上发布。 请大家动动小手&#xff0c;给我一个免费的 Star 吧~ 大家如果发现了 Bug…