r语言 图形一览_R语言常见图形(1)

本文涉及的基础图形有条形图、饼图、直方图、核密度图、箱线图、点图。

条形图

条形图通过垂直或水平的条形展示类别变量的分布(频数)。

函数barplot()

调用格式:

barplot(height)

其中,height是一个向量或一个矩阵。

适用条件

分类变量

分类

#载入包

library(vcd)

#获取分类变量数据

counts

#分类变量

counts

None Some Marked

42 14 28

使用table()函数生成分类变量。

简单条形图

如果height为一个向量,则它的值就是确定了各条形的高度。

#简单条形图

barplot(counts,main = 'Simple Bar Plot',xlab = 'Improvement',ylab = 'Fre')

#水平条形图

barplot(counts,main = 'Simple Bar Plot',xlab = 'Improvement',ylab = 'Fre',horiz = TRUE)

简单条形图

r语言 图形一览_R语言常见图形(1)_第1张图片

水平条形图

r语言 图形一览_R语言常见图形(1)_第2张图片

加入horiz=TRUE,生成水平条形图。

堆砌条形图和分组条形图

如果height是一个矩阵而不是一个向量则绘图结果将是一幅堆砌条形图或分组条形图。

参数

描述

beside

beside=FALSE(默认值),堆砌条形图。矩阵中每列的取值堆砌在同一条形上。

beside

beside=TRUE,分组条形图,矩阵中每列的取值表示一个分组。#生成数据

counts

counts

Placebo Treated

None 29 13

Some 7 7

Marked 7 21

#堆砌条形图

barplot(counts,main = 'Stacked Bar Plot',xlab = 'Treatment',ylab = 'Fre',col = c('red','yellow','green'),legend=rownames(counts))

#分组条形图

barplot(counts,main = 'Grouped Bar Plot',xlab = 'Treatment',ylab = 'Fre',col = c('red','yellow','green'),legend=rownames(counts),beside = TRUE)

堆砌条形图

r语言 图形一览_R语言常见图形(1)_第3张图片

分组条形图

r语言 图形一览_R语言常见图形(1)_第4张图片

均值条形图

使用数据整合函数生成相关结果,将结果传递给barplot函数,生成表示平均值、中位数、标准差等的条形图。

#生成数据框

states

#根据地区生成文盲率的平均值

means

#平均值

means

Group.1 x

1 Northeast 1.000000

2 South 1.737500

3 North Central 0.700000

4 West 1.023077

#将均值从小到大排序

means

means

Group.1 x

3 North Central 0.700000

1 Northeast 1.000000

4 West 1.023077

2 South 1.737500

#均值条形图

barplot(means$x,names.arg = means$Group.1)

#添加标题

title('地区平均文盲率')

均值条形图

r语言 图形一览_R语言常见图形(1)_第5张图片

棘状图

棘状图是对堆砌条形图的重缩放,这样每个条形的高度均为1,每一段的高度即表示比例。通过vcd包spine()函数绘制。

#载入包

library(vcd)

#绑定数据集

attach(Arthritis)

counts

#生成棘状图

spine(counts,main='Spinogram Example')

#解除绑定

detach(Arthritis)

棘状图

r语言 图形一览_R语言常见图形(1)_第6张图片

饼图

饼图以饼状图展示分类变量组成。

函数pie(x,labels)

其中,x是一个非负数值向量,表示每个扇形的面积。而labels表示各扇形标签的字符型向量。

适用条件

分类变量

示例

par(mfrow=c(2,2))

slices

lbls

pie(slices,labels = lbls,main='Simple Pie Chart')

饼图

r语言 图形一览_R语言常见图形(1)_第7张图片

直方图

直方图通过将在x轴上将值域分割为一定数量的组,在y轴上显示相应值的频数,展示连续变量的分布。

函数hist(x)

其中x是一个由数据值组成的数值向量。参数freq=FALSE表示根据概率密度而不是频数绘制图形。参数breaks用于控制组的数量。默认生成等距切分。

适用条件

连续变量

示例

hist(mtcars$mpg)

直方图

r语言 图形一览_R语言常见图形(1)_第8张图片

核密度图

核密度估计是用于估计随机变量概率密度函数的一种非参数方法。

核密度图函数

plot(density(x))

其中,x为一个数值向量。

适用条件

连续变量的分布

示例

plot(density(mtcars$mpg))

核密度图

r语言 图形一览_R语言常见图形(1)_第9张图片

箱线图

箱线图通过绘制连续变量的最小值、下四分位数、中位数、上四分位数及最大值,描述连续变量的分布。

函数boxplot()

适用条件

连续变量

判断数据异常点

分类

最简单的箱线图

boxplot(mtcars$mpg,main='Box plot',ylab='Miles per Gallon')

最简单的箱线图

r语言 图形一览_R语言常见图形(1)_第10张图片

分组箱线图

boxplot(formula,data=dataframe)

其中,formula为表达式(y~A,根据分类变量A生成连续变量y的箱线图),data为一个数据框。

参数

描述

varwidth=TRUE

将使箱线图的宽度与其样本大小的平方根成正比

horizontal=TRUE

可以反转坐标轴的方向

notch=TRUE

可以得到含凹槽的箱线图。两个箱的凹槽互不重叠,则说明它们的中位数有显著差异。boxplot(mpg~cyl,data=mtcars,main='Car Mileage Data',xlab = 'Number of Cylinders',ylab = 'Miles per Gallon')

分组箱线图

r语言 图形一览_R语言常见图形(1)_第11张图片

小提琴图

小提琴图(violin plot)是箱线图变种。它是箱线图与核密度的结合。通过vioplot包vioplot()函数绘制。

函数vioplot(x1,x2,…,names=,col=)

其中x1,x2,…表示要绘制的一个或多个数值向量

示例

#载入包

library(vioplot)

#绑定数据集

attach(mtcars)

#生成数据

x1

x2

x3

#绘图

vioplot(x1,x2,x3,names = c('4 cyl','6 cyl', '8 cyl'),col = 'gold')

[1] 10.4 33.9

#解除绑定

detach(mtcars)

小提琴图

r语言 图形一览_R语言常见图形(1)_第12张图片

点图

点图提供一种在简单水平刻度上绘制大量有标签值的方法。通过dotchart()函数实现。

dotchart(x,labels=)

其中x是一个数值向量,labels是由每个点的标签组成的向量。

参数

描述

groups

选中一个分类变量,对x分组

gcolor

控制不同组标签的颜色

示例

dotchart(mtcars$mpg,labels = row.names(mtcars),cex=.7,main = 'Gas Mileage for Car Models',xlab = 'Miles per Gallon')

点图

r语言 图形一览_R语言常见图形(1)_第13张图片

R语言小白速通R语言小白速通R语言小白速通

懂点R语言懂点R语言懂点R语言

欢迎分享收藏关注欢迎分享收藏关注欢迎分享收藏关注

点赞

收藏

分享

文章举报

35cc23739bc96c7d49f32a015aa81c6b.png

de638df49f1d5a3342eecff86bcb011e.png

R语言小白速通

发布了36 篇原创文章 · 获赞 12 · 访问量 2384

私信

关注

你可能感兴趣的:(r语言,图形一览)