Hollanda'nın şehirler arası kavisli hatlarla bir haritasını yapmak istiyorum. Lateks/lon kombinasyonu ile 24 şehir içeren df_verticles
numaralı iki adet veri tabanım var. İkinci veri karesi: df
Ben lat/lon kombinasyonundan lat/lon ile kombinasyon arasında bir eğri çizgi çizmek istiyorum. ben sadece şimdi,ggmap'de eğri çizgiler çizin, geom_curve çalışmıyor
ggplot_curve<- ggplot()+
geom_text(data=df_vertices, aes(x = Longitude, y = Latitude+0.025, label = df_vertices$city), size=6)+
geom_point(aes(x = Longitude, y = Latitude, size=scaledkWh), colour="red", data = df_vertices, alpha =0.5)+
scale_size_continuous(range=c(1,30))+
geom_curve(data=df, aes(x=Longitude_from, y=Latitude_from, xend=Longitude_to, yend=Latitude_to),
arrow=arrow(angle=15,ends="first",length=unit(0.7,"cm"),type="closed"), size= df$scaledAmount,alpha=0.5, curvature = 0.15)+
theme_bw()
Bu istediğim tam olarak ne:
> head(df_vertices)
city AmountSessions totalkWh AmountRFID scaledAmount scaledkWh Latitude Longitude
1 Alkmaar 13608 104554.68 1326 0.07139012 0.026941910 52.63903 4.755538
2 Almere 11281 100841.42 930 0.05006999 0.025985067 52.39447 5.282043
3 Amersfoort 7719 67663.30 1198 0.06449876 0.017435647 52.15108 5.383069
4 Amstelveen 25794 236437.93 2616 0.14084204 0.060925915 52.31724 4.859266
5 Amsterdam 402365 3880744.86 18574 1.00000000 1.000000000 52.34560 4.808834
> head(df)
CityChargeSessions NextCity Amount sumkWh scaledAmount scaledkWh Latitude_from Longitude_from Latitude_to Longitude_to
1 Amsterdam Alkmaar 1058 8133.736 0.18438480 0.15480933 52.34560 4.808834 52.63903 4.755538
2 Amsterdam Almere 998 7254.133 0.17392820 0.13806786 52.34560 4.808834 52.39447 5.282043
3 Amsterdam Amersfoort 566 4977.404 0.09864064 0.09473489 52.34560 4.808834 52.15108 5.383069
4 Amsterdam Amstelveen 3724 24210.289 0.64900662 0.46079423 52.34560 4.808834 52.31724 4.859266
5 Almere Amsterdam 1034 8685.526 0.18020216 0.16531155 52.39447 5.282043 52.34560 4.808834
6 Amersfoort Amsterdam 579 4936.823 0.10090624 0.09396251 52.15108 5.383069 52.34560 4.808834
Normalde ggmap yüzden ggplot ilk benim istenen arsa çizmek için karar bir ggplot sadece bir alt tabaka olduğu İstenen ggmap'ı alt katman olarak eklemek istiyorum.
: Bu i için umuyordum İstenen çıkış değil gördüğünüz gibi Şimdi ben sadece ggmapggmap_with_curve<- ggmap(map)+
geom_point(aes(x = Longitude, y = Latitude, size=scaledkWh), colour="red", data = df_vertices, alpha =0.5)+
scale_size_continuous(range=c(1,30))+
geom_curve(data=df, aes(x=Longitude_from, y=Latitude_from, xend=Longitude_to, yend=Latitude_to),
arrow=arrow(angle=15,ends="first",length=unit(0.7,"cm"),type="closed"), size= df$scaledAmount,alpha=0.5, curvature = 0.15)
tarafından ggplot() yerine, R bana bu hata mesajını verdi
geom_curve, doğrusal olmayan koordinatlar için uygulanmadı.
Google'a denedim, ancak bunu kendim düzeltiyorum.
Sorularım, bu ggplot çıktısını istediğiniz haritayla alt katman olarak nasıl alabilirim? Birisi bana yardım edebilir mi?
görünüyor. Birisi farklı bir çözümden haberi olmadığı sürece? Bu, istediğiniz temel dosyaları oluşturmayı ve bunları ekranınız için çalışan bir 2D doğrusal sisteme yansıtmayı (istediğiniz şekilde bozulmayı en aza indirir) ve [base ggplot2] (https://github.com/hadley/ggplot2) kullanmayı gerektirecektir./wiki/çizim-çokgen-şekil dosyaları) haritayı oluşturmak için işlevler. –