Learn R Programming

CSHShydRology (version 1.4.2)

ch_checkcatchment: Check Catchments

Description

Generates a simple map to allow a visual assessment of the catchment boundaries relative to the elevation contours.

Usage

ch_checkcatchment(
  dem,
  catchment,
  outlet,
  outlet_label = NULL,
  main_label = "",
  bbox_type = "catchment",
  channel_vec = NULL,
  cb_colour = "red",
  pp_colour = "red",
  channel_colour = "blue",
  contour_colour = "grey",
  plot_na = TRUE,
  plot_scale = TRUE,
  na_location = "tr",
  scale_location = "bl"
)

Value

TRUE. A map of the catchments is also plotted and the catchment parameters are printed.

Arguments

dem

raster DEM that catchments were generated from.

catchment

Catchment polygon (sf object).

outlet

Location of catchment outlet (sf object).

outlet_label

Character label for outlet.

main_label

Main label for catchment plot.

bbox_type

type of bounding box. If catchment, then the contours are bounded by the catchment, otherwise they are plotted to the extent of the DEM

channel_vec

Vectors of the channels will be plotted if specified.

cb_colour

Colour for catchment outline. Default is "red".

pp_colour

Colour for catchment pour points. Default is "red".

channel_colour

Colour for channel. Default is "blue".

contour_colour

Colour for contours Default is "grey".

plot_na

If TRUE (the default) a north arrow is added to the plot.

plot_scale

If TRUE (the default) a scale bar is added to the plot.

na_location

Location for the north arrow. Default is tr, i.e. top-right.

scale_location

Location for the scale bar. Default is bl, i.e. bottom-left.

Author

Dan Moore and Kevin Shook

Details

Also generates a table summarizing the catchments, including the coordinates of the outlet point and the catchment area.

See Also

ch_checkchannels

Examples

Run this code
# Only proceed if Whitebox executable is installed
library(whitebox)
if (check_whitebox_binary()){
  library(raster)
  test_raster <- ch_volcano_raster()
  dem_raster_file <- tempfile(fileext = ".tif")
  no_sink_raster_file <- tempfile("no_sinks", fileext = ".tif")

  # write test raster to file
  writeRaster(test_raster, dem_raster_file, format = "GTiff")

  # remove sinks
  removed_sinks <- ch_wbt_removesinks(dem_raster_file, no_sink_raster_file, 
  method = "fill")

  # get flow accumulations
  flow_acc_file <- tempfile("flow_acc", fileext = ".tif")
  flow_acc <- ch_wbt_flow_accumulation(no_sink_raster_file, flow_acc_file)

  # get pour points
  pourpoint_file <- tempfile("volcano_pourpoints", fileext = ".shp")
  pourpoints <- ch_volcano_pourpoints(pourpoint_file)
  snapped_pourpoint_file <- tempfile("snapped_pourpoints", fileext = ".shp")
  snapped_pourpoints <- ch_wbt_pourpoints(pourpoints, flow_acc_file, pourpoint_file,
  snapped_pourpoint_file, snap_dist = 10)

# get flow directions
  flow_dir_file <- tempfile("flow_dir", fileext = ".tif")
  flow_dir <- ch_wbt_flow_direction(no_sink_raster_file, flow_dir_file)
  fn_catchment_ras <- tempfile("catchment", fileext = ".tif")
  fn_catchment_vec <- tempfile("catchment", fileext = ".shp")
  catchments <- ch_wbt_catchment(snapped_pourpoint_file, flow_dir_file, 
  fn_catchment_ras, fn_catchment_vec)

# check results
  ch_checkcatchment(test_raster, catchments, snapped_pourpoints)
} else {
  message("Examples not run as Whitebox executable not found")
}

Run the code above in your browser using DataLab