如何用R语言绘制散点图

这篇文章主要介绍了如何用R语言绘制散点图,帮助大家更好的理解和学习使用R语言,感兴趣的朋友可以了解下

这篇文章主要介绍了如何用R语言绘制散点图,帮助大家更好的理解和学习使用R语言,感兴趣的朋友可以了解下

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

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

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: 空图

创建一个简单的线图:

x<-c(10,40)
y<-c(20,60)
# 生成 png 图片
png(file = "runnob-test-plot2.png")

plot(x, y, "l")

如何用R语言绘制散点图

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

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 列:

input <- mtcars[,c('wt','mpg')]
print(head(input))

输出结果为:

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

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

# 数据
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"
)

如何用R语言绘制散点图

散点图矩阵

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

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

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

pairs(formula, data)

参数:

  • formula 变量系列
  • data 变量的数据集
# 输出图片
png(file = "scatterplot_matrices.png")

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

pairs(~wt+mpg+disp+cyl,data = mtcars, main = "Scatterplot Matrix")

如何用R语言绘制散点图

以上就是如何用R语言绘制散点图的详细内容,更多关于R语言绘制散点图的资料请关注米米素材网其它相关文章!

本文来自投稿,不代表125jz立场,如若转载,请注明出处:http://www.125jz.com/10651.html

(0)
www.mimisucai.com的头像www.mimisucai.com普通用户
上一篇 2022年8月9日 上午10:50
下一篇 2022年8月9日 上午11:18

99%的人还看了以下文章

  • Python开发环境搭建

    今天学习在计算机上配置Python开发环境。 虽然使用Python自带的Vim编辑器+命令行的方式比较酷,然而一个优秀的IDE确实能让开发速度提升不少。 Python开发环境一在Eclipse中搭建Python开发环境 基本软件需求:1. Eclipse(https://www.eclipse.org/downloads/)2. Python解释器(www.…

    2019年3月15日
    16.7K1
  • Pillow-优秀的Python图像处理库安装及入门教程

    Pillow库是Python 图像处理库(Python image library)的一个派生分支,提供了广泛的文件格式(BMP,PNG,JPEG等)支持,提供基本的图像处理能力,如: 图像存储、图像显示、改变图像大小,旋转图像,图像格式转换,色场空间转换,图像增强,直方图处理,插值和滤波等等。 比起OpenCV库的图像处理,功能有限,但函数使用非常方便,大…

    2020年12月8日
    4.0K0
  • 跟永哥学MVC:Jsp+Servlet+JavaBean开发后台登录程序

    跟永哥学MVC:Jsp+Servlet+JavaBean开发后台登录程序,125建站网原创,转载请务必注明出版。 Jsp+Servlet+JavaBean开发后台登录程序-实现一 login.html(视图) <form action=”loginServlet” method=”post”> 用户名: <input type=”text”…

    2018年2月22日
    15.3K0
  • opencv 图像旋转 cv2.rotate和np.rot90案例精讲

    OpenCV 方法 OpenCV 中带有一个旋转图像的函数 cv2.rotate rotate(src, rotateCode[, dst]) -> dst参数:src:输入图像rotateCode:旋转方式1、cv2.ROTATE_90_CLOCKWISE:顺时针 90 度2、cv2.ROTATE_180:顺时针 180 度3、cv2.ROTATE_…

    2022年12月1日
    8.1K0
  • python使用列表生成式生成列表 其元素为100以内所有能被3整除的数

    python : 不使用列表生成式,生成元素为100以内所有能被3整除的数,代码如下: m=[] for i in range(3,100): if (i%3==0): m.append(i) print(m) 使用列表生成式生成列表,其元素为100以内所有能被3整除的数,代码: n=[i for i in range(3,100) if(i%3==0)] …

    2020年1月2日
    109.7K0
  • 实用sql查询语句详解2:高级查询

    上篇文章《实用sql查询语句详解1:给列取别名、查询部分行、多列排序》介绍了简单查询语句,这节课给大家讲解基本条件查询、集合函数、分组查询、子查询、并集和交集。 基本条件查询 比较运算符:>,>=,<,<=,=,!= between a and b,in(a,b,c),not exists,is null,like ‘%_’,or,a…

    2018年2月5日
    5.3K0

发表回复

登录后才能评论