R 语言学习教程,从入门到精通,R 绘图 散点图(25)

1、R 绘图 散点图

散点图是将所有的数据以点的形式展现在直角坐标系上,以显示变量之间的相互影响程度,点的位置由变量的数值决定,每个点对应一个 X 和 Y 轴点坐标。

散点图可以使用 plot() 函数来绘制,语法格式如下:

r 复制代码
plot(x, y, type="p", main, xlab, ylab, xlim, ylim, axes)

x 横坐标 x 轴的数据集合

y 纵坐标 y 轴的数据集合

type:绘图的类型,p 为点、l 为直线, o 同时绘制点和线,且线穿过点。

main 图表标题。

xlab、ylab x 轴和 y 轴的标签名称。

xlim、ylim x 轴和 y 轴的范围。

axes 布尔值,是否绘制两个 x 轴。

type 参数可选择值:

p:点图

l:线图

b:同时绘制点和线

c:仅绘制参数 b 所示的线

o:同时绘制点和线,且线穿过点

h:绘制出点到横坐标轴的垂直线

s:阶梯图,先横后纵

S:阶梯图,先纵后竖

n: 空图

创建一个简单的线图:

r 复制代码
x<-c(10,40)
y<-c(20,60)
# 生成 png 图片
png(file = "runnob-test-plot2.png")
plot(x, y, "l")

创建一个简单的线图,type 使用 o 参数,同时绘制点和线,且线穿过点:

r 复制代码
x<-c(10,40)
y<-c(20,60)
# 生成 png 图片
png(file = "runnob-test-plot.png")

plot(x, y, "o")

接下来我们使用 R 语言的内置数据集 mtcars 来进行测试。

r 复制代码
我们使用 mtcars 数据集的 wt 和 mpg 列:
r 复制代码
input <- mtcars[,c('wt','mpg')]
print(head(input))

输出结果为:

r 复制代码
wt  mpg
Mazda RX4         2.620 21.0
Mazda RX4 Wag     2.875 21.0
Datsun 710        2.320 22.8
Hornet 4 Drive    3.215 21.4
Hornet Sportabout 3.440 18.7
Valiant           3.460 18.1

接着我们使用以上数据生存一个散点图

r 复制代码
# 数据
input <- mtcars[,c('wt','mpg')]

# 生成 png 图片
png(file = "scatterplot.png")

# 设置坐标 x 轴范围 2.5 到 5, y 轴范围 15 到 30.
plot(x = input$wt,y = input$mpg,
   xlab = "Weight",
   ylab = "Milage",
   xlim = c(2.5,5),
   ylim = c(15,30),              
   main = "Weight vs Milage"

1.2、散点图矩阵

散点图矩阵是借助两变量散点图的作图方法,它可以看作是一个大的图形方阵,其每一个非主对角元素的位置上是对应行的变量与对应列的变量的散点图。而主对角元素位置上是各变量名,这样,借助散点图矩阵可以清晰地看到所研究多个变量两两之间的相关关系。

散点图矩阵就是把数据集中的每个数值变量两两绘制散点图。

R 语言使用以下函数创建散点图矩阵:

pairs(formula, data)

参数:

formula 变量系列

data 变量的数据集

示例

输出图片

png(file = "scatterplot_matrices.png")

4 个变量绘制矩阵,12 个图

相关推荐
Ivanqhz2 分钟前
向量化计算
开发语言·c++·后端·算法·支持向量机·rust
小虾米vivian2 分钟前
达梦使用dmfldr和外部表导入txt数据(windows环境)
java·服务器·数据库
萝卜不爱吃萝卜、3 分钟前
智能体来了:对传统行业的冲击
大数据·人工智能
1104.北光c°4 分钟前
【黑马点评项目笔记 | 商户查询缓存篇】基于Redis解决缓存穿透、雪崩、击穿三剑客
java·开发语言·数据库·redis·笔记·spring·缓存
格林威4 分钟前
相机的“对焦”和“变焦”,这二者有什么区别?
开发语言·人工智能·数码相机·opencv·算法·计算机视觉·视觉检测
LXS_3574 分钟前
常用算法(下)---拷贝、替换、算术生成、集合算法
开发语言·c++·算法·学习方法
忘忧记4 分钟前
用 Python 30 分钟做出自己的记事本
开发语言·python
AI应用架构探索者5 分钟前
大数据BI工具的培训与认证体系
大数据·ai
阿萨德528号5 分钟前
MyBatis OGNL 表达式陷阱:Integer类型字段使用“xxx!= ‘‘”时判断失效
java·开发语言·mybatis
数据知道5 分钟前
PostgreSQL 核心原理:一文掌握数据库的热数据缓存池(共享缓冲区)
数据库·缓存·postgresql