У меня есть два набора переменных широты и долготы для большого количества строк в моем фрейме данных (~ 100 000).Я пытаюсь построить график, который соединяет эти два набора координат (то есть ~ 100 000 линий, которые идут от широта1, долгота1 до широта2, долгота2 ), используя geom_segment, с оченьнизкая альфа, чтобы сделать линии прозрачными, потому что есть так много линий.Я хотел бы подчеркнуть начальные и конечные точки этих линий, и я считаю, что наилучшим способом сделать это было бы иметь цветовой градиент от начала до конца (скажем, от зеленого к красному).
Можно ли нарисовать линию geom_segment с цветным градиентом?Если нет, знаете ли вы другой способ подчеркнуть начало против конца с таким количеством строк?
(Я понимаю, что это может выглядеть грязно, потому что строк так много, но я подозреваю, что многие из них идут в одном направлении ..)
Вот некоторые примеры данных5 строк (но на самом деле у меня ~ 100 000, так что это должно быть несколько вычислительно эффективно):
example.df <- as.data.frame(matrix(c(1,435500,387500,320000,197000,
2,510500,197500,513000,164000,
3,164500,40500,431000,385000,
4,318500,176500,316000,172000,
5,331500,188500,472000,168000),
nrow=5, ncol=5, byrow = TRUE))
colnames(example.df) <- c("ID","longitude.1","latitude.1",
"longitude.2","latitude.2")
library(ggforce)
ggplot(example.df, aes(longitude.1, latitude.1))+
geom_link(aes(x=longitude.1, y=latitude.1,
xend=longitude.2, yend=latitude.2,
alpha=0.5), col="black")+
coord_equal()
Это дает следующие пять строк:
Мне бы хотелось, чтобы эти линии начинались синим цветом в первой координатной точке долготы-широты и заканчивались красным во второй координатной точке долготы-широты.