【发布时间】:2017-10-27 22:21:50
【问题描述】:
我有以下数据框:
test_new <- structure(list(PS_position = c(12871487, 12997222, 12861487,
12871491, 12934355), Region_ID = structure(c(1L, 1L, 2L, 2L,
1L), .Label = c("D", "D_left", "D_right"), class = "factor"),
chr_key = c(1, 1, 1, 1, 1), start = c(12871487, 12871487,
12871487, 12871487, 12871487), stop = c(12997222, 12997222,
12997222, 12997222, 12997222), exact_center = c(12934355,
12934355, 12934355, 12934355, 12934355)), .Names = c("PS_position",
"Region_ID", "chr_key", "start", "stop", "exact_center"), row.names = c(1L,
2L, 3L, 4L, 7L), class = "data.frame")
我想每行绘制一个图,其中每个区域的 start、stop 和 center 保持不变,并且 PS_position 被逐个添加为一个点,如下所示(单词不需要在图上出现,并且PS_position 标记可以是其他任何东西):
这在 ggplot 中作为 geom_vline() 和 geom_hline() 很难做到:
ggplot(test_new) + geom_vline(xintercept = 12871487) + geom_vline(xintercept = 12997222) + geom_vline(xintercept = 12934355)
所以我用一个例子尝试了base R:
plot(1,1)
lines(c(0.8, 1.2), c(0.6, 0.6))
abline(v = 1, col = "gray60")
abline(v=1.2, col = "gray60")
abline(v=0.8, col = "gray60")
显然,这些策略距离理想的情节还有很长的路要走。所以我的问题是如何最好地为单行制作所需的图,以及如何对其进行迭代以保持前一行的点?
非常感谢!
【问题讨论】:
-
你想迭代地分别构建每一步的情节吗?
-
嗨!是的,我想要每行数据帧一个图,保持前一行/上一个图的开始、停止、精确中心和 PS_position。谢谢!