数据帧分箱数据的直方图

可能重复:
如何在ggplot直方图中定义填充颜色?

我想从以分箱格式(data.frame(...,length = length,counts = N))汇总此信息的数据框绘制每个长度类别的鱼类数量(直方图)。 我是ggplot2的新用户,但似乎它可能是一个不错的选择。 我可以从data.frame对象创建这个直方图吗?

对不起,这么简短,这里是一块df的结构,

'data.frame':   416 obs. of  3 variables:
 $ specie: Factor w/ 1 level "speciesA": 1 1 1 1 1 1 1 1 1 1 ...
 $ length: num  34.5 35 35.5 36 36.5 37 37.5 38 38.5 39 ...
 $ Counts: num  2 0 0 0 1 0 1 1 0 1 ...

在这种情况下,渔民捕获2个人34.5厘米大,1 36.5,等等...非常感谢您的答案


由于您未提供数据样本,因此我已根据您的描述创建了数据。

鱼的长度从34.5到49.5(任意单位:au)。 鱼的最小长度是34.5,最大长度是49.5

 x <- 34.5:49.5

具有特定长度的鱼数量从0开始到2结束。

 y <- 0:2

创建一个长度为x的计数样本

 Counts <- sample(y, length(x), replace=TRUE)

创建一个包含长度和数量的数据框1。 注意:df1的结构符合您描述的数据结构

df1 <- data.frame(length=x, Counts = Counts)

由于您已经计算了具有特定长度的鱼的数量,因此您必须将其转换回原始格式,即,如果2条鱼的34.5(au),它应该被转换回到两个34.5s。

df2 <- data.frame(length = rep(df1$length, df1$Counts))

使用ggplot函数绘制数据。 注意有很多方法可以做同样的情节。 你可以尝试geom_histogram来获得同样的情节。

require("ggplot2")
ggplot(data=df2, aes(x=length, xmin=34.5, xmax=49.5)) + stat_bin(binwidth=1)

查看本网站获取更多信息

希望这可以帮助!

链接地址: http://www.djcxy.com/p/30845.html

上一篇: histogram for data frame binned data

下一篇: How to set limits for axes in ggplot2 R plots?