【发布时间】:2015-07-02 23:23:15
【问题描述】:
这是我的条形图的一个简单示例:
x <- data.frame(aa=c(0.2,0.6,0.1), dd = c(1,2,3))
x <- melt(x, "dd")
y <- data.frame(bb=c(0.4,0.5), dd = c(1,2))
y <- melt(y, "dd")
z <- data.frame(cc=c(0.5,0.25,0.1,0.05), dd = c(1,2,3,4))
z <- melt(z, "dd")
x=rbind(x,y,z)
col=c("white","grey","blue","white","red","white","green","blue","green")
ggplot(x, aes(x = variable, y = value)) + geom_bar(stat = "identity", fill = col)
我想知道是否有办法让我的条形结束,比如 lineend 选项 (http://sape.inf.usi.ch/quick-reference/ggplot2/lineend) ?
【问题讨论】:
-
我对此表示怀疑,想看看有没有人知道这个问题的解决方案。
-
在 barplot 中,您需要比较不同条形的高度。因此,边缘需要尽可能直。美学不是唯一要考虑的事情。绘图的目的不同。
-
使用ggbio package、
Ideogram函数 -
或者这里是一个起点:
ggplot(x, aes(x=variable, y=value)) + geom_path(size=10, lineend="round",col=col) -
@JustinB 如果您知道如何使用
geom_path()制作圆角,您介意发布答案吗?我很好奇它是怎么出来的。