R语言 用ggplot2包绘制多个叠加的直方图
在这篇文章中,我们将看到如何用R编程语言中的ggplot2包绘制多个重叠的直方图。
我们将使用ggplot2包中 geom_histogram() 函数的alpha参数来绘制多个叠加直方图。在这种绘制多个重叠直方图的方法中,用户首先需要在R控制台中安装并导入ggplot2包,然后调用geom_histogram函数,指定该函数的alpha参数为0到1之间的浮动值,这将导致不同的直方图图谱在同一图中的透明度,数据帧的设置作为该函数的参数,以获得R编程语言中的多个重叠直方图。
geom_histogram()函数: 这个函数是ggplot2模块的一个内置函数。
语法: geom_histogram(mapping = NULL, data = NULL, stat = “bin”, position = “stack”, …)
参数
- mapping: 美学映射,通常用AES或AES_string构建。如果你要覆盖绘图的默认值,只需要在层级上设置。
- data: 一个特定层的数据集–只有在你想覆盖绘图默认值时才需要。
- stat: 对该层的数据使用的统计转换。
- position: 对该层的重叠点使用的位置调整。
要在R控制台安装和导入ggplot2包,用户需要遵循以下语法。
install.packages("ggplot2")
library("ggplot2")
alpha参数: 这是一个图形参数,是一个从0到1的数字,从不透明到透明,它调整绘图的透明度。
例子 1 :
在这个例子中,我们将使用R编程语言中ggplot2包中的geom_histogram()函数的alpha参数,在单个图上创建两个不同的100个随机数据集的直方图。
library("ggplot2")
data <- data.frame(values = c(rnorm(100),
rnorm(100)),
group = c(rep("A", 100),
rep("B", 100)))
ggplot(data, aes(x = values, fill = group)) +
geom_histogram(position = "identity", alpha = 0.4, bins = 50)
输出
例2 :
在这个例子中,我们将使用R编程语言中ggplot2包中的geom_histogram()函数的alpha参数,在一张图上取3个不同的数据来创建3个不同的柱状图。
library("ggplot2")
data <- data.frame(values = c(c(6,2,5,4,1,6,1,5,4,7),
c(4,1,4,4,5,5,4,6,2,4),
c(9,1,5,7,1,10,6,4,1,7)),
group = c(rep("A", 10),
rep("B", 10),
rep("C", 10)))
ggplot(data, aes(x = values, fill = group)) +
geom_histogram(position = "identity", alpha = 0.4, bins = 50)
输出