Bug fix for data cache directory #389
This release introduces a new data source: https://reference.geoconnex.us and a vignette providing a broad overview of data access with nhdplusTools.
vignette("get_data_overview")
for
WaterSciCon24get_geoconnex_reference()
and
discover_geoconnex_reference()
This release has a significant consolidation of code to work with web services. It incorporates an ArcGIS REST service for the first time. It has very few backward compatibility issues with previous versions and introduces new functions and behavior.
A key change in behavior is the introduction of caching with the
memoise
package. See #366, pull request #364, and
documentation in nhdplusTools_cache_settings()
for
more.
get_huc12
and
get_huc8
get_huc()
and other web
service functions.nhdplusTools_cache_settings()
to control use of a
memoise
cache. #366nhdplusTools
has been split into two packages. A new
package hydroloom
is now available. It contains all nhdplusTools functionality not related
to specific dataset schemas. See this
issue for details.
hydroloom
v1.0.0 should be backward compatible with v0.7 but deprecation warnings have been added and one previously deprecated function has been removed.
This release evolves nhdplusTools
to use hydroloom
as a core dependency. nhdplusTools
now depends on
hydroloom
for all network navigation and indexing
functionality that is not specific to the nhdplus data model or specific
to a US-context.
Specific functions imported from hydroloom
include:
See the
hydroloom
reference list for details about these
functions.
With these functions migrated to hydroloom
, a number of
nhdplusTools
functions are now deprecated in favor of the
hyroloom
implementation.
make_node_topology()
get_pfaf()
get_path_members()
get_path_lengths()
get_levelpaths()
get_terminal()
make_node_topology()
In v1.0.0, the download_nhd()
function was added.
In v1.0.0, the stage_national_data
(previously
deprecated) function was removed.
This release fixes a minor example issue for CRAN checks
This release adds three new functions.
get_characteristics_metadata()
get_catchment_characteristics()
rescale_catchment_characteristics()
These functions are designed to provide access to:
Wieczorek, M.E., Jackson, S.E., and Schwarz, G.E., 2018, Select Attributes for NHDPlus Version 2.1 Reach Catchments and Modified Network Routed Upstream Watersheds for the Conterminous United States (ver. 3.0, January 2021): U.S. Geological Survey data release, .
See https://github.com/DOI-USGS/nhdplusTools/issues/304 and https://github.com/DOI-USGS/nhdplusTools/issues/303 for details.
Update a test for a change in sf
No functional changes. Package migrated to new repository: https://github.com/DOI-USGS/nhdplusTools
navigate_nldi
the “origin”
will always be named as such rather than the named 1-element list being
dropped to a data.frame.
https://github.com/DOI-USGS/dataRetrieval/issues/623
Note v0.5.4 was burned in a CRAN release mistake
fixes a cran test failure in an example and an issue with precision
of get_flowline_index()
v0.5.3 is primarily bug fixes and enhancements.
One notable addition is the addition of the
rpu_boundaries
and vpu_boundaries
datasets
which provide simplified polygons around the RPU and VPU subset domains
of the NHDPlusV2 dataset.
Mike Johnson is now
recognized as an author of nhdplusTools
.
New citation:
> citation("nhdplusTools")
To cite nhdplusTools in publications, please use:
Blodgett, D., Johnson, J.M., 2022, nhdplusTools: Tools for Accessing and
Working with the NHDPlus, https://doi.org/10.5066/P97AS8JD
map_nhdplus()
works much the same as
plot_nhdplus()
but creates a leaflet map rather than a
static plot.get_nldi_index()
is used to call the NLDI web service
to retrieve a hydrologic location.get_flowline_index()
and
get_waterbody_index()
units and projection handling was
altered. Defaults for the search_radius
input were changed.
Coordinate reference system handling in geoprocessing now relies on the
CRS of the provided points rather than the flowlines.get_nldi_basin()
now supports precise basin delineation
via a logical “split” parameter as well as the option to retrieve
un-simplified basin geometry.nhdplusTools
now
return a warning and NULL if the web service is unavailable or fails for
other reasons. This is according to CRAN policy.This is a very minor release required by CRAN checks.
Some scalability issues in plot_nhdplus()
were
identified and fixed.
get_raindrop_trace()
,
get_split_catchment()
use a web service to access elevation
data and retrieve a raindrop trace path to the nearest flowline in
nhdplus V2 and a split catchment or basin to a precise point location
respectively.get_xs_point()
,
get_xs_points()
, and get_elev_along_path()
access an elevation data service from the 3D Elevation Program and
return cross section / path elevation data.New functions st_compatibalize()
and
rename_geometry()
provide utility functionality to make two
layers compatible, including projection and rename geometry columns
respectively.
New function get_sorted()
generates a sorted and
optionally partitioned version of a dendritic tree.
subset_vpu()
wraps
subset_rpu()
and will subset a vector processing unit.fix_flowdir()
will re-order geometry nodes
such that their order corresponds to the convention used in nhdplus
data.get_vaa()
will now return an updated nhdplus network
attribute set derived from multiple improved sources.navigate_network()
provides a wrapper
around a number of network navigation capabilities and will support
local or web service data.get_tocomid()
encapsulates a suite of
functionality for converting edge node network representations to edge
list format.get_path_lengths()
finds network distances
between pairs of points.get_partial_length()
finds flowpath length
up and downstream of a hydrologic location.plot_nhdplus()
now includes on network and off network
waterbodies.get_wb_outlet()
finds the outlet flowline
of an on-network waterbody. This function works for both NHDPlusV2 and
hires.testthat
edition 3.igraph
package is no longer a dependency. All graph
algorithms have been implemented in base R for performance and
simplicity.New function added: get_streamlevel()
calculates
stream level, a bottom up level path order used by nhdplus to categorize
complete river levels.
nhdplusTools internals have started to be refactored to use all lower case attribute names. No changes should be seen from outside the package, but please report issues with attribute naming.
Package testing now runs in parallel and uses revision 3 of the
testthat
package.
Version 0.4.2 further cleans up temporary and cache data functionality for CRAN policy.
New functionality was added to indexing functionality.
disambiguate_flowline_indexes()
supports for disambiguating
them based on numeric or text attributes that should match. This
functionality is not heavily tested, but forms a basis for expansion of
this functionality going forward.get_hydro_location()
was added. It will return point
geometry given a geometry identifier and measure along that
identifier.Version 0.4.1 is a minor release with bug fixes and updates for CRAN policy.
A notable addition is handling for strictly dendritic topology encoded using a “tocomid” attribute rather than “fromnode” and “tonode” attributes. This functionality was added in subsetting functions and is backward compatible with previous versions.
Version 0.4.0 adds new functionality for data access via web services and updates the usability and flexibility of data discovery and subsetting functions. This release includes significant rework of functions related to network navigation and web-service data subsetting.
subset_nhdplus()
included internal
functionality for downloading data via web service. This code for
subsetting NHDPlus via web service was completely rewritten and a number
of new web-service data access functions were added. The
get_nhdplus()
function has been added and is for
web-service data access only. subset_nhdplus()
, which will
output a subset to a local .gpkg
file, now uses
get_nhdplus()
for download functionality.navigate_nldi()
and most other NLDI functions
are now based on an NLDI client in the dataRetrieval
package. Functionality has been maintained backward compatible with
nhdplusTools
v0.3 as much as possible with some minor
modifications to accommodate changes in dataRetrieval. The response
format from navigate_nldi()
has been changed slightly in
v0.4, it now includes both the origin feature and navigation type(s) as
a list. Two un-needed nldi discovery functions were removed..fst
file) for use in network navigation and other
applications have been added. These can be used with any nhdplusTools
functions that do not require geometry.get_levelpaths()
now has an
override_factor
parameter that will cause stream leveling
to follow the weight rather than the name input if the weight is
override_factor
times larger than the name indication.Functions Added * get_nhdplus()
*
get_nhdarea()
* get_waterbodies()
*
get_gagesII()
* get_huc12()
*
get_huc8()
* download_vaa()
*
get_vaa()
* get_vaa_names()
*
get_vaa_path()
Functions Removed * discover_nldi_navigation()
* discover_nldi_sources()
Functions Deprecated *
stage_national_data()
Functions with Consolidated Internals *
discover_nhdplus_id()
* get_nldi_basin()
*
get_nldi_feature()
* subset_nhdplus()
*
plot_nhdplus()
Finally, the handling of data and caching in the package has been overhauled. These changes are non-functional, but aim to decrease data downloads by caching rather than using temp directories.
subset_nhdplus()
now validates geometry and ensures all
outputs are in NAD83subset_nhdplus()
queries the NHDPlus database rather
than loading then filteringget_levelpaths()
rewritten for performance. Package now
uses data.table
.discover_nldi_characteristics()
and
get_nldi_characteristics()
navigate_nldi()
to use the new NLDI navigation
end point. Distance is now required.get_flowline_index()
to handle multipart
lines.plot_nhdplus()
to improve
scalabilitysubset_nhdplus()
for
download filtering.plot_nhdplus()
updated to improve
scalability of large downloads.get_node()
to get top and bottom of a
flowline.subset_rpu()
to enable subsetting the NHD by
Raster Processing Unitget_waterbody_index()
to find associations
between point locations and waterbodies.get_flowline_index()
with max_matches
parameter.get_flowline_index()
rather than requiring data to be
loaded locally.plot_nhdplus()
with both outlet-based and bbox
based data subsetting as well as rudimentary style modification
capabilities.get_streamorder()
and get_pfaf()
) for
dendritic networks.subset_nhdplus()
can now return data without writing a
file to disk.get_nhdplushr()
has been updated to modify terminal
path and other identifiers making nhdplusHR subsets “stand alone”. A
function make_standalone()
is now exported.get_terminal()
and get_pathlength()
functions to generate nhdplus network attributes.