美文网首页
R画直方图

R画直方图

作者: 耕读者 | 来源:发表于2020-02-23 15:25 被阅读0次

来源:https://www.cnblogs.com/xudongliang/p/6913363.html

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 是每个柱子的中心点;

相关文章

  • R画直方图

    来源:https://www.cnblogs.com/xudongliang/p/6913363.html his...

  • [Statistics]Matlab画直方图

    1.画直方图 先从外部导入数据: 画绝对频率的直方图,在画之前先解释什么叫直方图:直方图是反应数据在某一区间内出现...

  • R语言 直方图

    直方图表示被存储到范围中的变量的值的频率。 直方图类似于条形图,但不同之处在于将值分组为连续范围。 直方图中的每个...

  • 【R语言】--- 直方图

    直方图简介 直方图(Histogram),又称质量分布图,是一种统计报告图,由一系列高度不等的纵向条纹或线段组成,...

  • 画直方图

    效果: 代码:

  • R 笔记(基础内容)

    barplot(a) #直方图 数值型变量--每一个独立 VS hist(a) #画直方图barplot(t...

  • R语言画直方图与密度函数图

    在画直方图时,用到的函数为:hist()的调用格式 hist(x,breaks="Sturges",freq=NU...

  • 画个圈圈表示你

    0.数据和R包 1.基础的环状barplot 基础图由自定义的水平和垂直线、直方图组成。是ggplot2画滴 2....

  • seaborn画直方图

    设置hist-bins的个数的参数为 bins, 颜色参数为color, alpha是透明度参数(这里单图形可省略...

  • 【R语言】散点图+直方图+密度曲线(二)

    前面给大家介绍 ☞【R绘图】散点图+直方图(密度图)[https://link.zhihu.com/?target...

网友评论

      本文标题:R画直方图

      本文链接:https://www.haomeiwen.com/subject/hiujqhtx.html