Я пытаюсь создать стрелки с двойной строкой. Я не мог найти тип линии с двумя параллельными линиями. Это то, что я до сих пор:Создайте двойную линию/двойную стрелку в R ggplot2
library(ggplot2)
library(grid)
df_dblarrow <- data.frame(x0=1,y0=1,x1=3,y1=1)
br <- 0.02
p <- ggplot(df_dblarrow, aes(x=x0,y=y0))+
geom_point(size=5)+
ylim(0,2)
#create a single arrow
(p <- p + geom_segment(aes(xend=x1,yend=y1),
arrow = arrow(angle=30,length=unit(0.1,"npc"), type = "open")))
#create a two parallel lines 0.02 higher and lower (and a bit shorter)
(p <- p + geom_segment(aes(x=x0,y=(y0+br),xend=(x1-0.015),yend=(y1+br))) +
geom_segment(aes(x=x0,y=(y0-br),xend=(x1-0.015),yend=(y1-br))))
Это дает график с линиями дерева, вместо этого 2 я хочу, так что я должен удалить средний. Это становится слишком хаки. Я думал об использовании широкой черной линии с более тонкой белой линией сверху, но моя стрелочка тоже была бы широкой. Кто-нибудь имеет лучшую идею?
Смарт, я не думал об этом (+1). Тем не менее, мне все равно придется найти правильную ширину и более короткое расстояние при проб и ошибок. И придумайте расчет для работы с линиями с другими углами. Нет ли более автоматического способа? – RHA