永兴房产网站,深圳网站建设网站制作网站设计,加强部门网站建设,广州番禺职业技术学院官网目录
plot函数
par函数
hist函数
boxplot函数
plot函数应用实战
全局参数 R语言中有三大绘图系统包括基本绘图系统#xff0c;Lattice绘图系统#xff0c;ggplot2绘图系统
基本绘图系统
在R语言中#xff0c;以下函数通常用于创建和定制图形#xff1a;
plot
函数…目录
plot函数
par函数
hist函数
boxplot函数
plot函数应用实战
全局参数 R语言中有三大绘图系统包括基本绘图系统Lattice绘图系统ggplot2绘图系统
基本绘图系统
在R语言中以下函数通常用于创建和定制图形
plot
函数用于生成基本的二维散点图或线图。它可以用于展示两个变量之间的关系或者多个数据集在同一图形上的比较。
hist
函数用于生成直方图这是一种展示数据分布的图形。直方图可以快速揭示数据的分布情况包括集中趋势、离散程度和异常值。
boxplot
函数用于生成箱线图这是一种用于展示数据分布和比较不同数据集的图形。箱线图可以显示数据的中位数、四分位数和异常值。
points
函数用于在已有的图形上添加点。这可以用来突出显示特定的数据点或在图形上标记特定的值。
lines
函数用于在图形上添加直线。这通常用于连接散点图中的点创建趋势线或在其他类型的图形中添加额外的线元素。
text
函数用于在图形上添加文本。这可以用来标记特定的点、添加注释或显示额外的信息如标题或标签。
title
函数用于给图形添加标题。这有助于解释图形的内容使观看者能够理解图形所表示的数据和信息。
axis
函数用于添加或定制坐标轴。这可以包括设置轴标签、轴范围、刻度和刻度标签等。
plot函数
plot函数中有很多参数但是只有两个参数也就是x和y是必须的其余比较重要的函数有xlabylab他们用来给x轴和y轴添加标签lwd用来指定线宽lty用来指定划线的类型比如是实线还是虚线pch用于指定点的形状比如画点是用的实心还是空心还是三角形等等。pch的取值有很多每一个值都对应一种不同的点的类型。col就是color的缩写用来指定颜色。
par函数
这个函数用于设置全局参数这个设置会作用于R中所有的plot绘图。
这个函数有很多的参数比如
bg 参数用于设置图形背景颜色。您可以传递一个颜色名称或颜色代码如 white、black、blue 或十六进制颜色代码来改变整个图形区域的背景颜色。mar 参数用于设置图形边缘的大小。这是一个数值向量通常包含四个元素分别代表图形设备左、下、右、上边缘的行数。增加 mar 的值可以增加图形周围的空白区域减少则可以使图形更紧凑。las参数用于控制坐标轴标签的方向。值可以是0、1、2或3分别代表不同的标签方向 0标签总是平行于轴线默认。1标签总是水平的。2标签总是垂直于轴线。3标签总是垂直的但与0相反的方向。
mfrow 参数用于设置图形输出的行数和列数。这是一个可选参数当您希望在一个图形窗口中绘制多个图形时非常有用。例如mfrowc(2,2) 会将图形输出分为两行两列总共四个绘图区域。mfcol 参数与 mfrow 类似但它用于设置图形输出的列数和行数。例如mfcolc(2,2) 会创建一个两列两行的图形布局。
使用 par 函数时可以单独设置这些参数也可以将它们组合在一个包含所有设置的列表中传递给 par 函数。例如
par(bglightblue, marc(5, 4, 4, 2), las1)
这将设置背景颜色为浅蓝色左边缘为5行高下边缘和右边缘为4行高上边缘为2行高并将坐标轴标签设置为水平方向。
下面来举几个例子
还是以airquality这个数据集为例
hist函数
使用hist函数生成一个直方图直方图是柱状图的一种用于展示数据集中某个变量在不同区间内取值的频数 这个直方图展示的是Wind这一列的内容横轴是一个个等长的区间纵轴是频数可以直观地观察到各个区间内wind变量取值的频数 由于我们没有在创建直方图的时候指定xlab参数因此hist函数就把参数当成了横轴标签
boxplot函数
我们再使用boxplot(airquality$Wind)这句代码绘制一个箱线图箱线图可以让我们直观地观察到数据集中的Wind变量取值的分布情况可以看到在我们没有指定xlabylab等参数的时候x轴什么也没有我们知道x轴的标签表示的应该是Windy轴的数值表示的是风速因此我们可以引入参数xlab和ylab 把代码改成这样的boxplot(airquality$Wind,xlabWind,ylabspeed)此时绘制的箱线图是这样的 前面我们讲过箱线图不仅能够表示一个变量取值的分布情况还可以利用并排箱图直观地反应一个分类变量和一个数值变量的关系。如果我们要看不同月份的时候风速的分布情况代码可以这样写boxplot(Wind~Month,airquality,xlabMonth,ylabspeed)运行结果如图
来解释一下这个代码这个~在R语言中的功能通常是分割响应变量和解释变量响应变量也就是我们俗称的因变量解释变量也就是我们所说的自变量。这句代码中Wind~Month指明了响应变量是Wind解释变量是Month然后第二个参数告诉boxplot函数要操作的数据集是airquality通过下面的图可以看出风速在七月份比较低五月份比较高。 下面我对R语言中一些~的常用功能汇总
在R语言中符号 ~ 通常用作公式formula的分隔符它用来分隔响应变量和解释变量。这个符号在数据框data frames、统计模型和图形函数中都非常常见。如果是在绘图函数中的参数中遇到~那么他一定是用于指定y轴和x轴代表的含义。以下是 ~ 符号的一些主要用途
数据框和数据库查询 在数据框中~ 可以用来引用数据框中的列。例如dataframe~column1 表示数据框 dataframe 中名为 column1 的列。在数据库查询中~ 用于模糊匹配列名。例如SELECT ~column FROM table 会匹配 table 中所有以 column 开头的列。
统计模型 在建立统计模型时~ 用于指定模型的左侧为响应变量因变量右侧为解释变量自变量。例如在线性模型 lm(y ~ x, data) 中y 是响应变量x 是解释变量而 data 是包含这些变量的数据框。
图形函数 在图形函数中如 plot()、boxplot() 等~ 用于指定x轴和y轴的关系。例如plot(x ~ y, data) 会根据 data 数据框中的 x 和 y 列绘制散点图。
逻辑运算 在逻辑运算中~ 用作逻辑非运算符。例如!condition 和 condition ~ FALSE 在逻辑上是等价的都表示条件 condition 为假的情况。
宏替换 在编写宏或使用模式匹配时~ 可以用来转义特殊字符使其不被当作模式匹配的一部分。
plot函数应用实战
plot函数用于绘制散点图他的两个必要参数第一个是x第二个是y也就是横纵坐标。
比如我们想看看airquality这个数据集中Wind与Temp的关系可以这样写代码plot(airquality$Wind,airquality$Temp)运行结果如图从图中来看风速和温度似乎存在着一种负相关的关系。 当然在绘制这个图的时候为了让plot函数明确的知道Wind和Temp这两个来自于airquality这个数据集我们在他们两个的前面都加上了airquality$,这种写法虽然能够很好的完成任务但是好像让代码看起来有些冗余我们还可以以一种更简洁的方式来写这个代码比如with(airquality,plot(Wind,Temp))with函数的第一个参数指定你想要在其上执行操作的数据源后面的参数就是对这个数据源中的一些变量进行的操作这里我们是对airquality这个数据源中的Wind变量和Temp变量进行绘制散点图的操作以这种方式绘制的散点图与上面的图基本类似但是在横轴和纵轴标签上有些许差异就是少了airquality$ 如果想要给这个图添加上一个标题可以在plot函数中引入参数main比如with(airquality,plot(Wind,Temp,mainwind and temp))
还可以使用title函数给当前画图板上的图加上一个标题比如title(wind and temp)title参数不止可以添加主标题也可以添加xlab和ylab他的函数原型如下title(main title, xlab x-axis label, ylab y-axis label, ...)
如果我们在plot函数中再引入一个参数typen,运行结果就是这样的一个图 在R语言中plot 函数的 type 参数用于指定绘制图形的类型。当使用 typen 时这个参数告诉R创建一个没有数据点的图形框架也就是说它仅绘制坐标轴和标题但不显示任何数据点或线条。
这种用法通常是一个准备工作让你能够手动添加数据点或其他图形元素。例如你可能首先用 typen 创建一个图形框架然后使用 points 函数添加散点图数据或者使用 lines 函数添加线图数据。这样做可以让你更细致地控制图形的外观和布局。
在代码 with(airquality, plot(Wind, Temp, mainwind and temp, typen)) 中typen 创建了一个空的图形框架其中 Wind 和 Temp 是 airquality 数据框中的两列mainwind and temp 设置了图形的标题。由于使用了 typen所以不会有数据点被自动添加到图形中你需要后续使用 points 或其他函数来显示数据。
比如我们只想要画九月份的风速可以这样写with(subset(airquality,Month9),points(Wind,Temp,colred))结果如图 同理我们还可以使用下面的代码来绘制这样的图把五月份的wind与temp的散点图用蓝色表示678月份的wind与temp的散点图用黑色来表示 注意到在绘制六七八月份的散点图的时候我们并没有使用三句代码这是因为不同于前面两句的Month用指定月份678月份的散点图在绘制的时候指定Month使用了一个特殊的符号%in%在R语言中%in% 是一个逻辑操作符用于检查左边的表达式是否存在于右边的集合中。当左边的表达式是右边集合的成员时返回 TRUE否则返回 FALSE。这个操作符通常用于向量化的逻辑测试可以快速地对向量或列表中的元素进行成员资格检查。因此Month%in%c(6,7,8)就会在Month的取值为6,7,8这三个数的时候返回TRUE此时plot函数就可以绘制他们的wind与temp的散点图了。
自此我们完成了不同月份wind与temp的散点图使用不同颜色绘制的任务如果我们想要在图中加一条回归线用它来拟合现在的数据。要做到这一点需要两步首先要拟合一个模型这里拟合模型使用的函数叫lm用于创建线性拟合线性模型代码这样写fit 但是此时这幅图还有一个问题就是虽然我们针对不同月份使用了不同颜色的散点但是对于读者来讲他们并不知道这些颜色分别代表哪些月份因此我们还应该在这幅图中加上一些注释标签图例legend(topright,pch1,colc(red,blue,black),legendc(Sep,May,other))这句代码表示在右上方加上图例我来详细解释一下这句代码
legend 函数用于在图形上创建一个图例以帮助解释图中的符号、颜色或其他图形元素的含义。下面是对这段代码的详细解释
topright这个参数指定了图例的位置。在这个例子中图例将被放置在图形的右上角。pch1pch 参数代表图形符号的类型。值 1 表示使用圆圈作为点的形状。colc(red,blue,black)col 参数定义了不同图形符号的颜色。在这个例子中有三个颜色被定义红色、蓝色和黑色。这些颜色将与 legend 参数中定义的标签相关联。legendc(Sep,May,other)这个参数定义了图例中每个颜色或符号所代表的标签。在这个例子中有三个标签Sep代表9月May代表5月和 other代表其他月份或类别。
因此legend(topright, pch1, colc(red,blue,black), legendc(Sep,May,other)) 这段代码将在图形的右上角添加一个图例其中包含三种不同颜色的圆圈分别对应于 Sep、May 和 other 这三个类别。这有助于图形的观看者理解图中不同颜色的点代表的具体含义。 全局参数
使用函数par可以设置全局参数比如
par(bg)设置背景板颜色默认是白色
par(col)设置绘图的点或线的颜色默认是黑色
par(mar)设置图像距离四个边界的距离顺序是下左上右可以看到默认是这样的 par(mfrow)设置一个画板中能画几幅图且按照行的方式进行填充
全局参数 mfrow 是用于控制图形布局的参数之一。当你在创建多个图形并且希望它们在同一个图形窗口中按照行和列的方式排列时mfrow 参数非常有用。
mfrow 是一个包含两个元素的向量第一个元素指定行数第二个元素指定列数。当你设置了 mfrow 参数后接下来的图形将会按照这个布局进行排列。例如如果你设置 mfrowc(2,2)那么接下来的图形将会被排列成2行2列的格式。
这个参数是 par() 函数的一部分par() 函数用于设置或查询图形参数的多个全局设置。例如
par(mfrowc(2,2))
plot(1:10, rnorm(10))
plot(1:20, rnorm(20))
在这个例子中两个图形将会被放置在同一个窗口中按照2行2列的布局排列。第一个图形占据第一行的两个位置第二个图形占据第二行的两个位置。如图 请注意mfrow 的设置会影响所有接下来的图形直到它被改变或者图形设备被关闭。如果你想恢复到默认的图形布局可以将 mfrow 设置为 c(1,1)或者创建一个新的图形设备来开始一个新的布局。
与mfrow非常相似的一个全局参数是mfcol他的功能与mfrow非常相似也是用来设置一个画图板可以画几幅图唯一的区别是mfcol设置的排版是按照列的方式来填充的。