ggplot2 | geom_bar和position =" identity"

时间:2016-08-24 07:52:53

标签: r ggplot2

我是一个绝对的初学者,我最近开始使用优秀的包ggplot。我有一个关于使用position =" identity"的问题。带条形图。我通过互联网搜索了一下,发现:http://docs.ggplot2.org/current/geom_tile.html但是,它们与geom_bar()没有关系

A)第一张图:(效果很好)

ggplot(diamonds, aes(color, fill = cut)) +
geom_bar()

根据" cut"绘制频率(y轴)wrt颜色和填充。我很擅长这个。

B)现在,在第二张图中,我不确定发生了什么:

ggplot(diamonds, aes(color, fill = cut)) +
geom_bar(position = "identity", alpha = 1 / 2, colour = "red")

有人可以解释为什么第二张图有点不同(即条形图的高度在两个图中有所不同;配色方案也有所改变 - 我本来以为条纹是红色的,因为我是明确设置的color =" red"但是条形图具有渐变颜色方案,并且它们具有"红色"边框。

在绘制此图时,我使用的是公开提供的ggplot2库和diamond数据集包。

我是初学者,所以如果我的问题听起来太基本,我很抱歉。

1 个答案:

答案 0 :(得分:2)

正如@Richard Telford所说,position="identity"与栏重叠,默认选项为position="stack",您可以看到:

args(geom_bar)
function (mapping = NULL, data = NULL, stat = "count", position = "stack", 
..., width = NULL, binwidth = NULL, na.rm = FALSE, show.legend = NA, 
inherit.aes = TRUE)

args显示任何函数的参数,使用默认值,如此处所示,position参数的默认值为“stack”,因此在第一个例子中,条形堆叠。 如果你想指定“填充”颜色,你需要一个特殊的额外参数:一个比例(如果你在fill=...调用中尝试geom_bar它会覆盖fill=cut {{1} }}呼叫)。这里有一个丑陋的颜色和黑色边框的例子:

ggplot

enter image description here