Я сделал карту с помощью ggplot, на которой показаны различные точки долготы и широты страны. Я хочу, чтобы размер точек соответствовал столбцу частоты, который у меня есть в моем фрейме данных. Мой фрейм данных выглядит так:
Longitude Latitude Frequency
5.012392 52.09544 4
5.196948 52.30847 4
5.196945 52.1223 6
5.196945 52.30846 1
6.180394 53.19633 3
5.233904 52.42395 87
Вот мой код для создания карты и нанесения точек на ggplot:
ggplot() +
geom_polygon(data=Neth, aes(long,lat,group=group), fill="whitesmoke")+
geom_path(data=Neth, aes(long,lat, group=group), color="black",
size=0.2) +
geom_point(data=df,
aes(x=Longitude, y=Latitude, label = Frequency), colour="red", fill = "pink", pch=21, size=df$Frequency, alpha=I(0.5)) + scale_size(range = c(1,6))
"Neth" - это моя загруженная карта GADM. Когда я добавляю функцию scale_size, ничего не меняется и, например, точка с частотой 87 просто огромна. Любая помощь приветствуется.
Вот как выглядит мой график с моими фактическими данными: участок карты
1 ответ
Как сказал Грегор, восстановивший Монику:
Поместите size = Frequency внутри aes () для слоя geom_point. Удалить size = df $ Frequency
Похожие вопросы
Новые вопросы
r
R - это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, предоставьте минимальные и воспроизводимые примеры вместе с желаемым результатом. Используйте dput () для данных и укажите все небазовые пакеты с вызовами library (). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. По вопросам, связанным со статистикой, используйте https://stats.stackexchange.com.