我想制作一些对称的直方图来显示随时间变化的蝴蝶丰度。这是一个显示我试图创建的图表形式的网站:http://thebirdguide.com/pelagics/bar_chart.htm
为方便起见,我将使用 iris 数据集。
library(ggplot2)
g <- ggplot(iris, aes(Sepal.Width)) + geom_histogram(binwidth=.5)
g + coord_fixed(ratio = .003)
基本上,我想在 x 轴下方镜像此直方图。另一种思考该问题的方法是创建一个具有不同箱子的水平 fiddle 图。我查看了 plotrix 包和 ggplot2 文档,但在任何一个地方都没有找到解决方案。我更喜欢使用 ggplot2,但 base R、lattice 或其他包中的其他解决方案也可以。
最佳答案
没有您的确切数据,我只能提供一个大概的编码解决方案,但这对您来说是一个开始(如果您添加更多细节,我很乐意帮助您调整情节)。这是代码:
library(ggplot2)
noSpp <- 3
nTime <- 10
d <- data.frame(
JulianDate = rep(1:nTime , times = noSpp),
sppAbundance = c(c(1:5, 5:1),
c(3:5, 5:1, 1:2),
c(5:1, 1:5)),
yDummy = 1,
sppName = rep(letters[1:noSpp], each = nTime))
ggplot(data = d, aes(x = JulianDate, y = yDummy, size = sppAbundance)) +
geom_line() + facet_grid( sppName ~ . ) + ylab("Species") +
xlab("Julian Date")
这是图。
关于r - 对称直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31747694/