У меня есть пространственно-временной набор данных с различными индикаторами для набора местоположения, который я sh должен отобразить в сверхурочное время.
Вот мой facet_wrap + l oop
#basemap
basemap <- ggplot() +
geom_sf(data= country_adm2) +
coord_sf() +
theme_void()
print(basemap)
#joining dataframe to polygons
df_poly <- left_join(country_adm2, df, by= "County") ##joins the data by County.
#loop & facet_wrap plots
## This goes over the dataset (df_poly) to plot the the three variables, and facet_wrap over ~Date to see time variation (over 12 months)
for(i in df_poly[40:42]){ ## the vars I wish to plot to iterate the temporal map through
imap <- basemap +
geom_sf(aes(fill = i), data= df_poly ) +
scale_fill_viridis(option = "cividis", direction= 1, alpha= 1, )+
facet_wrap(~ Date) + ##the temporal facet_wrap
ggtitle(paste0("Indicators:", i)) +
labs(fill = "% of\ncovered population")
print(imap)
}
Проблема в том, что вместо фактических имен var i
в ggtitle
я получаю первое значение. Как мне пройти итерацию по names(df_poly[40:42])
правильно для каждого из графиков? Я смотрел на разные способы, но ни один из них не работал.
Я считаю, что способ, которым я делаю l oop, кажется, проблема. Я предполагаю, что мне нужно l oop по списку, а не напрямую по фрейму данных, однако я не уверен, как это сделать.