Предотвращение наложения диаграмм p ie на карту ggplot GADM с помощью geom_scatterpie - PullRequest
1 голос
/ 07 мая 2020

Я пытаюсь воссоздать этот график c:

Доля самцов улиток в озерах Новой Зеландии

На этом изображении показан контур Новой Зеландии с диаграммы p ie, расположенные за пределами контура и соединенные с координатами озера линией. Пока у меня есть код, который создает диаграммы p ie поверх координат каждого озера:

library(raster)
library(rgdal)
library(scatterpie)

## Download data from GADM - country level (0), no regional outlines
nz1 <- getData("GADM", country = "NZ", level = 0)

## Extract polygon corners and merge with shapefile data
nz1@data$id <- rownames(nz1@data)
nz1.ff <- fortify(nz1)
nz1.df <- merge(nz1@data, nz1.ff, by = "id", all.y = TRUE)

#Add datapoints for lakes (longitude & latitude of each lake, with male and female frequencies)
lakes <- read.csv("Map Pie Charts.csv")

## Plot map
ggplot() + 
  geom_polygon(data = nz1.df, aes(x = long, y = lat, group = group), fill="whitesmoke") +  
  geom_path(data=nz1.df, aes(long,lat, group=group), color="grey", size=0.1) +
  scale_x_continuous(limits=c(165, 180)) + 
  scale_y_continuous(limits=c(-50, -30)) +
  geom_scatterpie(aes(x=long, y=lat), data=lakes, cols=c("Males", "Females"))

Карта с пирогами по координатам озера Мой вопрос в том, есть ли код настроить размещение диаграмм p ie без ручного ввода новых координат там, где они мне нужны? Я видел сообщения о том, что «джиттер» не работает.

Спасибо за любую помощь!

1 Ответ

0 голосов
/ 10 июля 2020

Что ж, менее интересный ответ - это просто перебор: имейте второй набор координат там, где вы хотите, чтобы диаграмма p ie находилась. Для фанзов вы также можете довольно легко создать линию от точки сайта до диаграммы P ie. Я все равно хотел бы получить ответ, который не требует ручного создания точек, но это хоть что-то.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...