我正在做一個業余無線電專案,但遇到了一些困難。我正在嘗試獲取地圖并在發射器和接收器之間建立鏈接。
資料
rx_sign <- c("2E0ILY/KIWI","ND7M","KP4MD","N2HQI","WA2N","WA2ZKD","OE9TAV","2E0PYB","OE9TAV","2E0ILY/KIWI")
rx_lat <- c(52.896,36.229,38.688,43.021,35.813,43.146,47.438,51.771,47.438,52.896)
rx_lon <- c(-2.625,-116.042,-121.292,-76.458,-82.542,-77.625,9.625,0.708,9.625,-2.625)
tx_sign <- c("2E0JCC","AA5GI","AC9YY","AC9YY","AC9YY","AC9YY","DC6EB","DG8GAD","DG8GAD","DK9MS")
tx_lat <- c(51.479,35.479,41.813,41.813,41.813,41.813,49.479,48.438,48.438,50.479)
tx_lon <- c(-2.708,-95.042,-88.042,-88.042,-88.042,-88.042,6.958,9.875,9.875,8.958)
map_data <- data.frame(rx_sign,rx_lat,rx_lon,tx_sign,tx_lat,tx_lon)
我的目標是制作一張看起來像這樣的地圖。我以前在地圖上連接過城市,但無論出于何種原因,多重連接都讓我很困惑。

過去,我用緯度/經度為每個城市配對,然后像這樣連接它們。我知道這不是使用我擁有的資料執行此操作的正確方法,但這讓我有點難過,我無法完全理解如何解決這個問題。
base_world <- map_data("world")
ggplot()
geom_polygon(data=base_world, aes(x=long, y=lat, group=group))
geom_line(data=map_data, aes(x=rx_lon, y=rx_lat), color="red", size=1)
geom_line(data=map_data, aes(x=tx_lon, y=tx_lat), color="green", size=1)
geom_point(data=map_data, aes(x=rx_lon, y=rx_lat), colour = "yellow", size=1.5, alpha=I(0.7))
geom_point(data=map_data, aes(x=tx_lon, y=tx_lat), colour = "blue", size=1.5, alpha=I(0.7))
theme(text = element_text(size=20), legend.position="none")

uj5u.com熱心網友回復:
你會想要更長時間地轉動你的資料,用一個 id 鏈接每個 tx/rx 對。然后,您可以將此 id 傳遞給group美學中的geom_line(). (這也為您提供了一個可以映射到的 tx 與 rx 變數color。geom_point())
library(tidyr)
library(dplyr)
library(ggplot2)
map_data <- map_data %>%
mutate(link = row_number()) %>%
pivot_longer(
!link,
names_to = c("txrx", ".value"),
names_sep = "_"
)
p <- ggplot(map_data)
geom_polygon(data=base_world, aes(x=long, y=lat, group=group))
geom_line(aes(x=lon, y=lat, group = link), color="red", size=1)
geom_point(data=map_data, aes(x=lon, y=lat, colour = txrx), alpha=0.7)
theme(text = element_text(size=20), legend.position="none")
coord_quickmap()
p

如果你只想裁剪到某些區域,你可以在coord_quickmap().
p coord_quickmap(xlim = c(-140, 20), ylim = c(20, NA))

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/536942.html
標籤:r图表2地图地理信息系统
