This is a major rewrite of the {opencage} package.
opencage_forward()
and opencage_reverse()
have
been deprecated and are superseded by oc_forward()
and
oc_reverse()
, respectively. In addition there are two new
functions oc_forward_df()
and oc_reverse_df()
,
which geocode place names or addresses into geographic coordinates
(latitude and longitude) or vice versa, and return a data frame.
The new features include:
oc_forward()
and oc_reverse()
return
either lists of data frames, JSON strings, GeoJSON strings, or URLs to
be sent to the API (the latter for debugging purposes).oc_forward_df()
and oc_reverse_df()
take a
data frame or vectors as input and return a data frame with the
geocoding results, optionally with the source data frame bound to the
results data frame.output
), so it is possible to serially
(reverse) geocode lists of locations or coordinates. The geocoding
functions show a progress indicator when more than one
placename
or latitude
/longitude
pair is provided.countrycode
s in accordance with the OpenCage API (#44). The
countrycode
s can now be provided in upper or lower case
(#47).oc_bbox()
now makes it easier to
create a list of bounding boxes from numeric vectors, bbox objects or
data frames.oc_forward
and oc_forward_df
now support
OpenCage’s
proximity
parameter. The results of the geocoding
request will be biased towards that location (#60).oc_points()
now makes it easier to
create a list of point coordinates from numeric vectors or data frames
to pass to the proximity
argument for example.roadinfo
parameter (#65). If set to TRUE
,
OpenCage attempts to match the nearest road (rather than an address) and
provides additional road and driving information.language
argument are not
validated anymore, since the language tags used by OpenStreetMap and
hence OpenCage do not always conform with the IETF BCP 47 standard
(#90). The languagecodes
, which were stored in {opencage}
as external data, have therefore been omitted from the package. In
addition, it is now possible to specify
language = "native"
, so OpenCage will attempt to return the
results
in the “official” language of the country.oc_config()
. If you want OpenCage to
have no record of the contents of your queries, you can also set the
no_record
parameter for the active R session with
oc_config()
(as opposed to providing the parameter with
each function call). All oc_config()
settings can be set
more permanently via options()
or environment variables,
see help(oc_config)
.opencage_forward()
, opencage_reverse()
,
and opencage_key()
are soft-deprecated.opencage_forward()
and opencage_reverse()
will always output strings as characters, i.e. they won’t coerce to
factor depending on the stringsAsFactor
option.opencage_key()
returns the OpenCage API key
invisibly.NA
values are not allowed anymore for the
placename
or latitude
/longitude
arguments, because OpenCage throws a HTTP 400 ‘bad query’ error when the
query is empty (#98).countrycodes
is now
code
, not Code
.code_message
, which were stored in {opencage} as external
data, have been deleted. For more information on OpenCage’s HTTP status
codes see https://opencagedata.com/api#codes.countrycode
argument can be used for
Namibia (#24, #25).add_request
parameter (for appending original
query to results).abbrv
parameter, see
https://blog.opencagedata.com/post/160294347883/shrtr-pls.no_record
parameter, see
https://blog.opencagedata.com/post/145602604628/more-privacy-with-norecord-parameterNEWS.md
file to track changes to the
package.