R - ggplot - geom_bar圆角化处理

6
这是一个简单的例子,展示了我的条形图的外观:
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)

我想知道是否有一种方法可以使我的条形图端点变成圆角,就像使用线(http://sape.inf.usi.ch/quick-reference/ggplot2/lineend)的lineend选项一样?


我怀疑这个问题是否有解决方案,想知道是否有人知道。 - pogibas
这并不是非常重要。我的条形图是染色体,通常染色体的马赛克具有圆形末端 ;) - R_SOF
1
使用ggbio包,调用Ideogram函数。 - zx8754
1
这里是一个起点:ggplot(x, aes(x=variable, y=value)) + geom_path(size=10, lineend="round",col=col) - zx8754
1
@JustinB 如果你已经弄清楚如何使用 geom_path() 来制作圆角,能否发一篇答案?我很想看看它的效果。 - LJW
显示剩余3条评论
1个回答

1

这是一个示例,其中条形图的端点是圆角的,与geom_line(geom_path)一起使用,作为最小示例。

df1 <- data.frame( x=c(1,1,2,2,3,3),
                   y=c(1,7,1,4,1,5),
                   chr=c("one","one","two","two","three","three") )

ggplot( df1, aes(x,y, col=chr) ) + geom_line( lineend="round", lwd=10 )

ggplot_geom_line


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接