R语言hist绘图函数

hist 用于绘制直方图,下面介绍每个参数的作用;

1)x: 用于绘制直方图的数据,该参数的值为一个向量

代码示例:

data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data)

效果图如下:

从图中可以看出,横坐标为不同的区间,纵坐标为落入该区间内的频数;

2) break : 该参数的指定格式有很多种

第一种: 指定一个向量,给出不同的断点

代码示例:

data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5))

效果图如下:

第二种:指定分隔好的区间的个数,会根据区间个数自动去计算区间的大小

代码示例:

3)freq: 逻辑值,默认值为TRUE , y轴显示的是每个区间内的频数,FALSE, 代表显示的是频率(= 频数/ 总数)

代码示例:

par(mfrow = c(1, 2))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), freq = T, main = "freq = T")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), freq = F, main = "freq = F")

效果图如下:

4)probability : 逻辑值,和 freq 参数的作用正好相反,TRUE 代表频率, FALSE 代表频数

代码示例:

par(mfrow = c(1, 2))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), probability = T, main = "probability = T")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), probability = F, main = "probability = F")

效果图如下:

5) labels: 显示在每个柱子上方的标签,

代码示例:

hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), labels = c("A", "B", "C"))

效果图如下:

6) axes : 逻辑值,是否显示轴线

代码示例:

par(mfrow = c(1, 2))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), axes = T, main = "axes = T")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), axes = F, main = "axes = F")

效果图如下:

7) col : 柱子的填充色

代码示例:

par(mfrow = c(1, 2))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), col = "pink")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), col = rainbow(3))

效果图如下:

8) border : 柱子的边框的颜色,默认为black, 当border = NA 时, 代表没有边框

代码示例:

hist(data, breaks = c(0.5, 1.5, 2.5, 3.5), col = rainbow(3), border = NA)

效果图如下:

9) densitty 和 angle , 用线条填充柱子

代码示例: density 控制填充的线条的密度

par(mfrow = c(1, 3))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 1, main  = "density = 1")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 2, main  = "density = 2")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 3, main  = "density = 3")

效果图如下:

代码示例: angle 控制线条的角度,必须和density 参数配合使用,才能发挥作用

par(mfrow = c(1, 3))
data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 2, angle = 45,  main  = "angle = 45")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 2, angle = 90,  main  = "angle = 90")
hist(data, breaks = c(0.5, 1.5, 2.5, 3.5),  density = 2, angle = 180, main  = "angle = 180")

效果图如下:

最后介绍一下hist函数的返回值

data <- c(rep(1, 10), rep(2, 5), rep(3, 6))
a <- hist(data, breaks = c(0.5, 1.5, 2.5, 3.5))
a
$breaks
[1] 0.5 1.5 2.5 3.5

$counts
[1] 10  5  6

$density
[1] 0.4761905 0.2380952 0.2857143

$mids
[1] 1 2 3

$xname
[1] "data"

$equidist
[1] TRUE

attr(,"class")
[1] "histogram"

从代码中的结果可以看到,返回值是一个 histogram 类型的对象, 其中breaks 是分隔的区间,counts 是每个区间的频数,density是每个区间的频率,mids 是每个柱子的中心点;

利用返回值,我们可以用hist函数统计一串数据在不同区间的频数分布

时间: 2025-01-02 19:19:54

R语言hist绘图函数的相关文章

R语言低级绘图函数-text

text函数用来在一张图表上添加文字,只需要指定对应的x和y坐标,以及需要添加的文字内容就可以了 基本用法: plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n") text(x = 3, y = 3, labels = "text") 效果图如下: 支持同时创建多个text标签 代码示例: plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "

R语言低级绘图函数-axis

axis函数用来在一张图表上添加轴线,区别于传统的x轴和y轴,axis 允许在上,下,左, 右4个方向添加轴线 以x轴为例,一条轴线包含3个元素,水平的一条横线,叫做axis line , 刻度线, 叫做tick line, 对应的标签 labels 基本用法: 通过side 参数设置需要添加的轴线的方向,从下边开始,沿逆时针方向,数字为1到4 代码示例: par(oma = c(1, 1, 1, 1), mfrow = c(1, 4)) plot(1:5, 1:5, xlim = c(0,6)

R语言boxplot绘图函数

boxplot 用于绘制箱线图,我们都知道boxplot 用于展示一组数据的总体分布,在R语言中,支持两种输入数据的方式 第一种:x , 这个参数指定用于绘制箱线图所用的数据,是一个向量 代码示例: boxplot(1:100) 效果图如下: 第二种, 通多formala 和 data 两个参数指定,适合展示多组数据的分布 代码示例: dataset <- data.frame(value = rep(1:100, times = 2), group = factor(rep(c("A&q

R语言低级绘图函数-grid

grid 函数用来在一张图表上添加网格线, 基本用法: plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n") grid() box() 效果图如下:

R语言低级绘图函数-title

title 函数用来在一张图表上添加标题 基本用法: main 表示主标题,通常位于图像的上方, sub 表示副标题,位于图像的下方, xlab 表示x轴的标签,ylab 表示y轴的标签 par(oma = c(1, 1, 1, 1)) plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n", xlab = "", ylab = "") box(which = "figure&q

R语言低级绘图函数-rect

rect 函数用来在一张图上添加矩形,只需要指定左下角和右上角的坐标的位置,就可以画出一个矩形 基本用法: plot(1:5, 1:5, xlim = c(0,6), ylim = c (0,6), type = "n") rect(xleft = 1, ybottom = 1, xright = 5, ytop = 5) 效果图如下: xleft, ybottom, xright, ytop 支持一次设置多个值,同时创建多个矩形,用法如下: plot(1:5, 1:5, xlim =

R语言之merge函数案例

R语言的merge函数可以实现类似SQL的有点类似 left join right join 或者类似union的效果. df1 = data.frame(CustomerId=c(1:6),Product=c(rep("Toaster",3),rep("Radio",3))) > df2 = data.frame(CustomerId=c(2,4,6,7),State=c(rep("Alabama",3),rep("Ohio&q

R语言基础绘图

一.可以通过代码或者图形用户界面保存图形,绘图语句夹在开启目标图形设备语句和关闭图形设备的语句之间: pdf("filename.pdf") png("filename.png") jepg("filename.jpg") ........ dev.off() 二.图形参数: 1.通过par()指定参数选项,这种方式设定的参数值除非被再次修改,否则会在绘画结束前一直有效,添加参数no.readonly=TRUE可以生成一个可以修改的当前图形列表参

R语言列表list函数

列表是R语言中的对象,它包含不同类型的元素,比如 - 数字,字符串,向量和另一个列表等.一个列表还可以包含一个矩阵或一个函数作为它的元素.使用list()函数创建列表. 创建一个列表 下面是一个例子来创建一个包含字符串,数字,向量和逻辑值的列表 # Create a list containing strings, numbers, vectors and a logical values. list_data <- list("Red", "Green",