У меня есть фрейм данных с координатами широты и долготы для всех мест (4500 городов), которые я хочу построить.
Например:
Мне нужно что-то вроде этого — Но здесь учат, как это делать с помощью Python, и мне нужно использовать R. (ОТ: https://www.kaggle.com/crisparada/brazilian-cities-a-simple-exploration) :
Однако я не смог найти в Интернете, как я могу построить график в R, используя координаты. Единственное, что я нашел, это то, как я могу получить координаты на картах Google, а затем напрямую построить. Но, поскольку мне нужно сделать своего рода «карту рассеяния» для более чем 4500 городов, это нецелесообразно.
Недавно я начал изучать язык R, и есть некоторые интерпретации, которые я не могу сделать в отношении того, что я нахожу в Интернете.
Вы можете попробовать использовать пакет sf
.
Предполагая, что вы уже загрузили данные из .csv или другого типа и имеете фрейм данных (или табличку) с именем my_df
:
library(sf)
library(ggplot2)
my_sf <- st_as_sf(my_df, coords = c('LON', 'LAT'))
my_sf <- st_set_crs(my_sf, crs = 4326)
#Plot it:
ggplot(my_sf) +
geom_sf(aes(color = cluster))
Пакет sf (и связанный с ним geom_sf
) — это способ отображения географических данных в R. 4500 баллов не должно быть проблемой.
@ user14738548 измените порядок LAT и LON в функции st_as_sf
. Как отредактировано выше.
Кажется, это работает, @mrhellmann! Спасибо. Но похоже что-то еще надо подправить... i.stack.imgur.com/uBC3h.png