초과 근무를 매핑하려는 위치 집합에 대한 다양한 지표가있는 공간 시간 데이터 세트가 있습니다.
다음은 내 facet_wrap + 루프입니다.
#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])
각 플롯에 대해 올바르게 반복하려면 어떻게해야 합니까? 나는 여러 가지 방법을 보았지만 그들 중 어느 것도 작동하지 않았습니다.
나는 루프를 만드는 방식이 문제인 것 같다고 생각합니다. 나는 직접 데이터 프레임이 아닌 목록을 반복해야한다고 가정하지만 어떻게 해야할지 모르겠습니다.
이 시도. 변수 이름을 반복해야합니다. 코드를 변경 한 곳에 ##로 시작하는 주석을 추가했습니다.
#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)
## loop over the names of the vars to plot
for(i in names(df_poly)[40:42]){ ## the vars I wish to plot to iterate the temporal map through
imap <- basemap +
## Convert names to symbols using!!sym()
geom_sf(aes(fill = !!sym(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)
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다