R语言 | 数据分析——统计绘图

news2025/2/26 17:46:37

目录

一、分类数据的图形描述

1.1 条形图barplot()函数

1.2 饼图pie()函数

 二、量化数据的图形描述

2.1 点图与dotchart()函数

2.2 绘图函数plot()

 2.2.1 绘制时间数列对象

​2.2.2 向量数据与plot()函数

2.2.3 数据框数据与plot()函数

2.2.4  因子型数据与plot()函数

​2.2.5 使用lines()函数绘制回归线

​2.2.6 使用abline()函数绘制线条

​2.2.7 控制其他绘图的参数说明

​三、在一个页面内绘制多张图表的应用

 四、新建窗口


一、分类数据的图形描述

分类(质化)数据的描述绘图,相对比较简单,主要有条形图与饼图,均可以直观地进行各个类别间次数或者量化多寡的比较。

1.1 条形图barplot()函数

条形图又可分为垂直条形图和水平条形图,主要是用来标示某变量的数据变化,我们可以使用barplot()函数。有关barplot()绘图函数的使用格式如下:

barplot(height,width=1,space=NULL,horiz=FALSE,xlim=NULL,ylim=NULL,legend.text=NULL,main=NULL,xlab=NULL,ylab=NULL)
  • height:可以为向量或者矩阵提供长条的高度值。
  • width:直方图每一长条的宽度。
  • space:直方图两相邻长条的间隔。
  • horiz:逻辑值,若为FALSE绘制的是直立式,反之则绘制水平式。
  • legend.text:一个文字向量作为图例说明。
  • main:绘图的抬头文字及副抬头文字。
  • xlab,ylab:x轴及y轴的标签。
  • xlim,ylim:x轴及y轴的数值界限。

  

可以看到部分岛屿的名称未显示,加大宽度即可显示如下图所示:

 

1.2 饼图pie()函数

饼图(也称圆瓣图)适合表示分类数据中各个不同类别的数据占总数的比例,因此可以说是分类数据下相对次数分布表的图示。

有关pie()绘图函数的使用格式如下:

pie(x,labels=names(x),radius=0.8,clockwise=FALSE,main=NULL,...)
  •  x:一个非负向量,决定饼图每一部分面积大小的比例。
  • labels:一个文字向量,决定饼图每一部分的名称说明。
  • radius:饼图的半径长度,数值在-1与1之间,超过1时会有部分图被切割。
  • clockwise:逻辑值,表示将所给数值按顺时针或逆时针绘图。
  • col:一组向量,表达饼图每一部分的颜色。
  • main:饼图的标题文字。

 

 

 

 

 

 

 二、量化数据的图形描述

一般常见的单变量量化数据的统计图形有点图、直方图、箱形图等。它们都能够清楚地表达数据的分布情况。以下将使用点图、直方图与箱形图来描述量化数据。

2.1 点图与dotchart()函数

R语言中的点图是使用dotchart()函数来绘制的。水平轴是用来表示数值出现的额次数;垂直轴则是用来表示数值数据变量值的范围,每一点代表某一个数值出现了几次。所以由点图就能够了解书记实际出现在哪些数值即隐含的分配情形,也能够迅速地得到数值数据的众数。由于dotchart()绘图函数的使用格式如下:

dotchart(x,labels=NULL,groups=NULL,gdata=NULL,cex=par("cex"),pch=21,gpch=21,bg=par("bg"),color=par("fg"),gcolor=par("fg"),lcolor="gray",xlim=range(x[is.finite(x)]),main=NULL,xlab=NULL,ylab=NULL,...)
  • x:可以是向量或者矩阵(使用列)。
  • labels:数据的标签。
  • groups:列出数据如何分组,若为矩阵,则以列进行分组。
  • gdata:标示出使用什么样的统计方式作为绘图的依据。
  • cex:绘图字符的大小。
  • pch:绘图字符,默认是21,代表空心圆。
  • gpch:不同的分组分别使用什么字符绘图。
  • bg:背景颜色。
  • color:标签与绘图点的颜色。
  • gcolor:分组标签与值得颜色。
  • lcolor:绘制水平线得颜色。

 

在R语言系统中有一个系统内建的矩阵对象VADeaths,这个对象记录1940年美国Virginia州每1000人的死亡率,其中年龄层划分为50~54、55~59、60~64、65~69、70~74。同时区分乡村男性与女性,城市男性与女性。

 上述dotchart()函数,通过设定参数pch可设定点的形状,默认是"pch=19",代表实心圆,其他几个常用的数值及意义如下:

  • pch=20:项目符号,小一点的实现圆(约2/3大小)。
  • pch=21:空心圆。
  • pch=22:空心正方形。
  • pch=23:空心菱形。
  • pch=24:空心箭头向上的三角形。
  • pch=25:空心箭头向下的三角形。
  • 此外,还可以通过xlim参数设定x轴的区间大小。

2.2 绘图函数plot()

plot()函数其实是一个通用函数,它会依据所输入的对象,自行分配适当的绘图函数执行需要的任务。此函数可绘制两数值变量的散点图,可以从中观察出两数值变量间的线性相关性。当然plot()函数也被用来绘制table、factor以及ts等对象的统计图,只是应用于不同的对象时绘制出来的图形也会有所不同。

有关plot()函数的使用格式如下:

plot(x,y,...)
  •  x:x数值向量数据,不同的对象可以绘制出不同的结果。
  • y:y数值向量数据,视x有无情况而定。
  • type:绘图的形式。"p"为点;"L"为线;"b"为两者;"o"为重叠;"h"为直方图;"s"为阶梯形;"n"为不绘图。
  • main,sub,xlab,ylab:标题、次标题、x轴标签、y轴标签。
  • asp:y/x(y对比与x)的比值。

 2.2.1 绘制时间数列对象

我们首先绘制时间序列(ts)图,也就是在图上依时间序列绘出唯一提供的数值向量。

上述参数“type=",将直接影响所绘制的类型,预设type="l",表示各点间用直线连接。 

(1)type=p:点

 (2)type=b:点和线

(3)type=c:"type=b"的线部分

(4)type=o:重叠"type=a"和"type=b"两种图

 

(5)type=h:垂直线图

 2.2.2 向量数据与plot()函数

 加上州名:

由上述执行结果可以看到,我们已经成功使用text()函数为数据标签加上州名称了。另外在text()函数内,参数adj的作用主要是指出标签数据的对齐方式。这是一个含两个元素的向量,它的可能值是0、0.5、1,分别表示靠左/靠下、中间、靠右/靠上对齐。

2.2.3 数据框数据与plot()函数

美国黄石国家公园有一个著名的景点老实泉,它会按固定时间喷发温泉。在R语言系统内有一个数据集faithful,这个数据集记录每次温泉喷发的时间长短和两次喷发之间的时间间隔,两个数据的单位均是分钟。

 

其实也可以设定标记符号的背景颜色,此时可以使用"bg='参数,以类似"col="的方式设定符号的背景色。

 

2.2.4  因子型数据与plot()函数

另外一个常用的对象格式是factor,如果我们提供的数据是原始的类别,并使用了as.factor()函数,则plot()函数会自动汇总因子变量的数据分布,并绘制成为条形图,这对于分类数据的分析与绘图是相当有帮助的。

当我们提供的x向量为因子变量,而y向量为数值向量,则所绘制的plot图形为各个因子变量的箱形图。

 

 2.2.5 使用lines()函数绘制回归线

当我们了解如何绘制上述数据图后,也可以使用上述数据图绘制回归线,步骤如下:

(1)使用lm()函数可以建立最简单的线性模型。

(2)接着我们可以使用fitted()函数,从回归模型中获得拟合值。

 2.2.6 使用abline()函数绘制线条

 若在abline()函数内加上参数"v=",则可以绘制垂直线。

 若在abline()函数内加上参数"h="则可以绘制水平线。

 其实abline()函数也是一个通用函数,也可以直接绘出faithful数据图的回归线。

 2.2.7 控制其他绘图的参数说明

 

(1)las参数

las(label style),可用于设定坐标轴的标签角度,它的可能指如下所示:

  • 0:默认值,坐标轴的标签与坐标轴平行。
  • 1:坐标轴的标签保持水平。
  • 2:坐标轴的标签与坐标轴保持垂直。
  • 4:坐标轴的标签保持垂直。

 

  

 

  

 (2)bty参数

bty(box type),可用于设定外框类型,它的可能值如下:

  • "o":默认值,绘出完整的图表外框。
  • "n":不绘制图表外框。
  • "1" "7" "c" "u" "]":可根据这些参数对应的字符形状,绘出边框。

 

 

 

(3)cex参数

cex(character expansion ratio),这个参数可用于设定图表标签、坐标轴标签和坐标轴刻度的文字大大小。它的默认值是1,若此值小于1则字缩小,若此值大于1则字放大。它的使用方式如下:

  • cex.main:设定图表标签大小。
  • cex.lab:设定坐标轴标签。
  • cex.axis:设定坐标轴刻度。

  三、在一个页面内绘制多张图表的应用

如果想要在单张页面内放置多张图表,需使用两个参数,分别是mfrow和mfcol,由此设定一个页面要放置多少张图,mfrow可控制1行的图表数,mfcol可控制1列的图表数,这两个参数将接收一个含两个元素的向量。

如果想要设定1行有2张图,则其设定如下所示:

mfrow=c(1,2)

如果想要设定1列有2张图,则其设定如下所示:

mfcol=c(2,1)

如果想要设定一张页面有4张图,可以设定如下所示:

mfrow=c(2,2)

另外,我们还需要使用par()函数,将上述设定放入par()函数,若想结束目前单个页面放置多张图的状态,也需将上述设定放入par()函数。

 

 

 四、新建窗口

R语言系统允许新建一个窗口显示所建的数据文件,可以使用dev.new()函数,代码如下:

使用后应关闭窗口,如果没有关闭,则所有绘图均在此窗口显示。

关闭窗口使用函数dev.off()。

此时之前所建窗口关闭,未来又将在Rstudio右下方窗口显示所建的数据图。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/520709.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YARN 监控管理以资源管理

YARN的监控管理和资源管理 YARN WebUI V1服务JobHistoryServer服务配置 TimelineServer服务 YARN操作维护命令USER用户命令applicationjarapplicationattemptcontainerlogsqueuenodeversion Admin 管理命令resourcemanager | nodemanagerproxyserverdaemonlogrmadmintimelinese…

jenkins+springboot+gitee自动化部署项目

1、新建 maven项目我取名first 2、点击项目进行配置 3、源码管理配置 4、新建 stop.sh脚本 4、vim 编辑stop.sh脚本,build前停止jar #!/bin/bash # 获取jar包的pid pidps -ef | grep java | grep projectmonitor | awk {printf $2} if [ ! -z $pid ]; then kill -9 $pid …

Java面向对象三大特性封装和private关键字

目录 友情提醒一、Java面向对象的三大特性之封装1)概念和好处2)封装案例①访问权限修饰符(private)②构造方法与gette&setter方法③具体的封装案例 友情提醒 先看文章目录,大致了解知识点结构,直接点击…

苹果mac清理软件CleanMyMac X v4.13兼容13系统,堪称Mac最好的系统清理工具

CleanMyMac X for mac是MacOS上一款Mac清理优化工具,不仅包含各种清理功能,更是具有卸载器、维护、扩展、碎纸机这些实用功能,可以同时代替很多工具。它可以清理,优化,保养和监测您的电脑,确保您的Mac运行…

cleanmymac x 4.13新功能介绍,cleanmymac x怎么取消订阅

CleanMyMac X4.13版是一款运行在macOS系统中的专业清理软件,以安装方便、使用简易、功能完善等特点而闻名。CleanMyMac X在功能方面可以说是做到了极致,下面让我们看一下CleanMyMac X都包含有哪些功能。 CleanMyMac X是一款专业的Mac清理软件&#xff0c…

文件批量改名#批量修改文件名称中有特殊符号

在日常工作中,相信大家都会碰到,需要有修改文件名或文件夹名称等,修改方法也是很多种,如果遇到文件名有特殊符号,要如何把特殊符号删除或替换成自己需要的文字或其他表情符号呢。一般大家都是手动去修改,如…

安装和使用分布式HDFS系统在CentOS 8上进行文件上传操作

文章目录 实验目的和背景实验目的实验背景 实验过程步骤1:安装Java步骤2:下载hadoop-3.3.1.tar.gz步骤3:创建一个普通用户来运行Hadoop Hadoop 概念Hadoop 整体设计HDFSHDFS 的节点命名节点 (NameNode)数据节点 (DataNode)副命名节点 (Second…

语义分割学习笔记(四)膨胀卷积

推荐课程: 1.膨胀卷积_哔哩哔哩_bilibili(膨胀卷积原理讲的很清楚) 2.膨胀卷积(Dilated convolution)详解(gradding effect问题和解决方法讲的很清楚) 感谢博主霹雳吧啦Wz / 太阳花的小绿豆和Enzo_Mi提供视频讲解和源…

C++ OpenCV编译安装教程

文章目录 环境说明Cmake编译配置编译前配置编译选项开始正式编译安装 编写代码测试参考文章 环境说明 win10 MinGW64 Cmake 下载mingw64 (版本:12.1.0 posix-seh) 下载Cmake (版本3.17.5) 注:mingw64和cmake下载安装完成后记得把bin目录添加到【环境…

Video Grounding

一些工作能够检测包含特定动作的视频片段,一般称 为动作检测(action detection)或视频中的时序动作定位(Temporal Action Grounding in Videos,TAGV) 然而, TAGV 受限于预先定义的动作类别集合…

基于html+css的图展示57

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

母亲节:向世界上最伟大的母爱致敬

在这世间众多的亲情关系中,有一种关系无与伦比,毫不费力地凌驾于其他任何已知的地球关系之上。这种非凡的关系就是母亲与子女之间的关系。 母亲对家庭无尽的爱、奉献和忠诚使这份感情无价。为了向全球所有母亲表示敬意,母亲节在世界46个国家庆…

如何用ChatGPT拆解爆款内容(文章/脚本)、提出修改意见,再根据修改意见,最终成稿?

该场景对应的关键词库(11个): 示例内容、爆款库、内容类型、拆解角度、亮点、不足、修改建议、文案、风格、文章、脚本 提问模板(4个): 第一步:建立自己的爆款库,并选择其中1个爆款…

路径规划算法:基于鲸鱼优化的路径规划算法- 附代码

路径规划算法:基于鲸鱼优化的路径规划算法- 附代码 文章目录 路径规划算法:基于鲸鱼优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化算法鲸鱼…

SpringBoot通过自定义注解整合Redisson实现分布式锁(单机+集群模式)

😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: SpringBoot通过自定义注解整合Redisson实现分布式锁 ⏱️ 创作时间&am…

低代码信创开发核心技术(一):基于Vue.js的描述依赖渲染DDR实现模型驱动的组件

前言 随着数字化转型的不断发展,低代码开发平台已成为企业快速建立自己的应用程序的首选方案。然而,实现这样一个平台需要具备高效、灵活和可定制化的能力。这正是基于描述依赖渲染(Description dependency rendering)所实现的。…

Jenkins 发布到 windows 主机

由于一些原因, 最近程序部署在windows 服务器上比较多, 本文以将前端程序发布到windows server 2016 为例进行介绍 流程 需考虑网络联通性, 此处我的目标服务器没有公网固定IP, 故采用vpn 工具组网 步骤: 一、使用执行SSH脚本的方式 1. 在jenkins 服务器及目标机器上安装 VP…

Windows终端中文乱码,查看系统默认编码及修改系统默认编码

最近windows升级之后出现一个问题,终端出现了乱码,导致启动程序启动不起来。 window系统如何查看系统默认编码 方式一: 在Windows平台下,winr 打开运行—》输入cmd进入cmd窗口,输入:chcp 可以得到操作系统…

会声会影2023是什么软件,会声会影和pr到底哪个好

图1是pr(premiere)平时大家可能会经常听到有人说会声会影2023,但是很多人都不知道这是什么软件。其实听它的名字就知道这是一款和声音、影像有关系的软件。下面,小编就来给大家具体介绍一下这款软件吧。 会声会影2023是什么软件&…

微信客服对接-唯一客服系统文档中心

微信客服官方网址为:https://kf.weixin.qq.com ,可以在微信内、外各个场景中接入微信客服,提供一致的咨询体验,企业可通过API接口回复消息,做好客户服务。 微信客服或者也可以叫企业微信客服,可通过API接口…