Let’s get some flow data for the NHDPlus subset included with nhdR
package. Our goal is to adjust the color and size of each reach by their average flow.
library(nhdR)
library(dplyr)
library(ggplot2)
library(sf)
ggplot() +
geom_sf(data = gull$sp$NHDWaterbody) +
geom_sf(data = gull$sp$NHDFlowLine)
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
<- gull$sp$NHDFlowLine gull_sf
NHDPlus includes two estimates of flow:
<- nhd_plus_load(4, "EROMExtension", "EROM_MA0001") %>%
eromflow filter(ComID %in% gull$sp$NHDFlowLine$COMID) %>%
select(ComID, Q0001F)
<- left_join(gull_sf, eromflow, by = c("COMID" = "ComID")) gull_sf
<- nhd_plus_load(4, "VogelExtension", "vogelflow") %>%
vogelflow filter(COMID %in% gull$sp$NHDFlowLine$COMID,
!= -9999.00000)
MAFLOWV
<- left_join(gull_sf, vogelflow, by = "COMID") gull_sf
<- dplyr::filter(gull_sf, !is.na(Q0001F))
gull_sf #> old-style crs object detected; please recreate object with a recent sf::st_crs()
%>%
gull_sf ggplot() +
geom_sf(data = gull$sp$NHDWaterbody) +
geom_sf(aes(color = gull_sf$Q0001F), size = gull_sf$Q0001F / 20) +
labs(color = "EROM Flow (cms)")
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> Warning: Use of `gull_sf$Q0001F` is discouraged.
#> ℹ Use `Q0001F` instead.
<- filter(gull_sf, !is.na(MAFLOWV))
gull_sf %>%
gull_sf ggplot() +
geom_sf(data = gull$sp$NHDWaterbody) +
geom_sf(aes(color = gull_sf$MAFLOWV), size = gull_sf$MAFLOWV / 20) +
labs(color = "Vogel Flow (cms)")
#> old-style crs object detected; please recreate object with a recent sf::st_crs()
#> Warning: Use of `gull_sf$MAFLOWV` is discouraged.
#> ℹ Use `MAFLOWV` instead.