在R中的多个点之间的图中添加多个线段
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在R中的多个点之间的图中添加多个线段相关的知识,希望对你有一定的参考价值。
我正在使用geom_segment
在R中的绘图上添加线段。由于我有许多线段(总共80个)需要添加,似乎我不能通过使用“+”添加更多行。是否由于R中的层数有限?无论如何,我想知道是否有任何方法可以在一个图中添加这80个线段。
以下是我在剧情中使用的代码:
ggplot(df_var_g1,aes(Name,PrePost, fill=type)) +
geom_bar(colour="black", width=0.7, stat="identity",position=position_dodge(width=0.8)) +
scale_fill_manual(values=c("#F6D3D1","#C9CFE9")) +
geom_segment(aes(x = 0.8, y = 0.8525, xend = 1.2, yend = 0.8665, colour = 'b'),size=1) +
geom_segment(aes(x = 1.8, y = 0.8525, xend = 2.2, yend = 0.8665, colour = 'c'),size=1) +
geom_segment(aes(x = 2.8, y = 0.8525, xend = 3.2, yend = 0.8665, colour = 'c'),size=1) +
geom_segment(aes(x = 3.8, y = 0.8525, xend = 4.2, yend = 0.8665, colour = 'c'),size=1) +
geom_segment(aes(x = 4.8, y = 0.8525, xend = 5.2, yend = 0.8665, colour = 'c'),size=1) +
geom_segment(aes(x = 5.8, y = 0.8525, xend = 6.2, yend = 0.8665, colour = 'c'),size=1) +
...(perhaps 80 geom_segment here...) +
scale_color_manual(values=c("#FF6666","#0000FF")) +
geom_errorbar(aes(ymin=SDmin, ymax=SDmax), width=.1, position=position_dodge(1)) +
theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank(),panel.background = element_blank(), axis.line = element_line(colour = "black"), axis.ticks.length=unit(-0.15, "cm"), axis.text.x = element_text(margin=margin(15,5,10,5,"pt")), axis.text.y = element_text(margin=margin(5,8,10,5,"pt"))) +
coord_cartesian(ylim=c(0.7,1.0))
情节如下:
任何人都可以解决问题吗?或者只是摆脱geom_segment
。我只想添加80行...非常感谢!
答案
不要使用geom_segment
- 使用geom_line
与团体美学。您需要在数据框中使用一列来标识要配对的点; geom_line可以连接具有该列相同值的行中的点
ggplot(df_var_g1, aes(Name,PrePost, fill=type)) +
geom_bar(colour="black", width=0.7,
stat="identity",position=position_dodge(width=0.8)) +
scale_fill_manual(values=c("#F6D3D1","#C9CFE9")) +
# draw lines connecting points with the same value in group_column
geom_line(aes(group_by = group_column))
以上是关于在R中的多个点之间的图中添加多个线段的主要内容,如果未能解决你的问题,请参考以下文章
R语言ggplot2可视化:可视化密度图(Density plot)可视化多个分组的密度图数据点分布在箱图中间添加主标题副标题题注信息