丁香实验_LOGO
登录
提问
提问
我要登录
|免费注册
丁香通
点赞
收藏
wx-share
分享

如何用 R 语言绘制散点图?

guomj_cdc

3658

R 语言绘图-散点图

散点图是展示两个或多个数值型变量相关性特征的常用工具,通常包括简单散点图、三维散点图、矩阵散点图等。

简单散点图

简单散点图是将观测数据绘制在一个二维平面中,以此观察数值型变量之间的相关性。我们以 R 中 ggplot2 包中的 mtcars 数据集来讲述一下 R 如何绘制简单散点图。

ggplot2 包的安装及调用

mtcars 数据集的调用的查看

比如我们想绘制变量 mpg 与变量 wt 之间的散点图。可以用三个函数进行绘制,包括 plot() 函数、ggplot2 中的 qplot() 函数及 ggplot() 函数。

一、plot() 函数绘制简单散点图

代码如下:

结果如下:

四种方式绘制的图片(上图)都一样。第一种方式,x 代表以何变量作为散点图的横坐标,y 代表以何变量作为散点图的纵坐标;第二种方式为第一种方式的简写,默认第一个变量为散点图的横坐标,第二个变量为散点图的纵坐标;第三种方式和第四种方式采用了 R 公式的写法,符号「~」前作为散点图的纵坐标,符号「~」后作为散点图的纵坐标,第三种方式直接调用向量,而第四种方式用 data 参数指定绘图的数据框。

二、qplot() 函数绘制散点图

ggplot2 中的 qplot() 函数也可以用于绘制散点图。代码如下:

结果如下:

此处用法与 plot() 函数类似,但没有 R 公式方式的写法。

三、ggplot() 函数

除上述两种方式外,ggplot() 函数也可以用于散点图的绘制,个人比较喜欢 ggplot() 函数绘制。因为个人感觉其绘图比较灵活,在函数后通过「+」可以直接增加图层。

ggplot()绘制散点图最基本的代码如下:

结果如下:

当然也可以简写:

结果:

两种方法的结果一样。ggplot() 在 data 参数中指定需要绘图的数据框,x 和 y 分别制定散点图的横坐标和纵坐标。geom_point() 语句代表我们想要绘制的图像是散点图。

1、增加回归线

有时绘制完散点图后,我们希望在散点图上增加一条趋势线,这时我们可以用到 geom_smooth() 语句。代码如下:

结果如下:

我们看到在散点图上增加的光滑曲线不是一条直线,如果我们想要绘制一条直线趋势线,我们需要用到 method 语句。代码如下:

这时我们看到趋势线变成直线,这是因为在 geom_smooth()语句中的 method 参数默认选择的平滑方法是 loess(局部多项式回归拟合),用 method =「lm」可以指定对二维散点图进行平滑的方法为 lm(线性回归拟合),当然也包括其他方法比如「glm」、「gam」、「rlm」等,在此不详细展开,有兴趣的读者可以查阅相关文献。

2、置信区间的显示

默认情况下,所绘制回归曲线的置信区间是显示的,如上图。如果我们希望不显示置信区间,可以用到 geom_smooth() 语句中的 se 参数。代码如下:

结果如下:

3、修改横纵轴标题

我们在绘图时通常需要对横纵轴标题进行修改。如上图,我们想把 wt 修改为「横轴」,mpg 修改为「纵轴」。可以用到 labs() 函数。代码如下:

结果如下:

4、修改点及线的颜色

如果我们想修改散点图的颜色,可以用 colour 参数。比如我们想把上图中点的颜色由黑色修改为红色。代码如下:

结果如下:

如果想要将回归线的颜色由蓝色修改为黑色,代码如下:

结果如下:

针对散点图的修改还有更多的小技巧需要我们在实际应用中进行学习,其他对散点图进行修饰的方法,我会在以后的文章中慢慢分享。

原文链接:https://blog.csdn.net/guomj_cdc/article/details/ 78308915

<link />
提问
扫一扫
丁香实验小程序二维码
实验小助手
丁香实验公众号二维码
关注公众号
反馈
TOP
打开小程序