Простая карта мира с выделенными странами и выбранными городами

Я хочу нарисовать карту мира и выделить избранные страны и города. Страны и города представят места, где были получены данные исследования. К сожалению, мне это удалось. Я мог только выделить страны. Как я могу добавить города, как они показаны пурпурным, и, в конечном итоге, названия городов или стран?

library(maptools)
data(wrld_simpl)

lat<-c(7,13.3,12,46,38,52.31)
lon<-c(6,16,105,2,23.7,13.23)
cities<-data.frame(lat,lon)
myCountries = wrld_simpl@data$NAME %in% c("Australia",  "Germany",  "Sweden", "Austria")
plot(wrld_simpl, col = c(gray(.90), "red")[myCountries+1])

введите описание изображения здесь


person Niels    schedule 16.04.2019    source источник
comment
Вам потребуются координаты городов, затем вы можете использовать geom_point, чтобы выделить их. aes() может принимать аргументы color, size и alpha, которые помогут настроить параметры выделения по вашему желанию. Вам понадобится install.packages("ggplot"), чтобы это сработало   -  person Abdallah Atef    schedule 17.04.2019
comment
Спасибо за предложение, я добавил данные в переменные города. Как можно было интегрировать geom_point в код?   -  person Niels    schedule 17.04.2019


Ответы (1)


Самый простой способ отсюда будет:

cities <- coordinates(cities)

plot(wrld_simpl, col = c(gray(.90), "red")[myCountries+1])
points(cities, col = "purple", lwd = 7)

Однако, если вам нужно изменить карту в любой момент (например, для повторного проецирования / преобразования точек), вам, вероятно, придется изучить использование векторной геометрии и _2 _ / _ 3_: https://r-spatial.github.io/sf/.

person Phil    schedule 17.04.2019