# Single data sources
occ(query = 'Accipiter striatus', from = 'gbif')
occ(query = 'Accipiter striatus', from = 'ecoengine')
occ(query = 'Danaus plexippus', from = 'inat')
occ(query = 'Bison bison', from = 'bison')
# Data from AntWeb
# By species
(by_species <- occ(query = "acanthognathus brevicornis", from = "antweb"))
# or by genus
(by_genus <- occ(query = "acanthognathus", from = "antweb"))
occ(query = 'Setophaga caerulescens', from = 'ebird', ebirdopts = list(region='US'))
occ(query = 'Spinus tristis', from = 'ebird', ebirdopts =
list(method = 'ebirdgeo', lat = 42, lng = -76, dist = 50))
# Many data sources
out <- occ(query = 'Pinus contorta', from=c('gbif','inat'))
## Select individual elements
out$gbif
out$gbif$data
## Coerce to combined data.frame, selects minimal set of columns (name, lat, long)
occ2df(out)
# Pass in limit parameter to all sources. This limits the number of occurrences
# returned to 10, in this example, for all sources, in this case gbif and inat.
occ(query='Pinus contorta', from=c('gbif','inat'), limit=10)
# Geometry
## Pass in geometry parameter to all sources. This constraints the search to the
## specified polygon for all sources, gbif and bison in this example.
occ(query='Accipiter striatus', from='gbif',
geometry='POLYGON((30.1 10.1, 10 20, 20 60, 60 60, 30.1 10.1))')
occ(query='Helianthus annuus', from='bison',
geometry='POLYGON((-111.06 38.84, -110.80 39.37, -110.20 39.17, -110.20 38.90,
-110.63 38.67, -111.06 38.84))')
## Or pass in a bounding box, which is automatically converted to WKT (required by GBIF)
## via the bbox2wkt function
occ(query='Accipiter striatus', from='gbif', geometry=c(-125.0,38.4,-121.8,40.9))
## Bounding box constraint with ecoengine
occ(query='Accipiter striatus', from='ecoengine', limit=10,
geometry=c(-125.0,38.4,-121.8,40.9))
## You can pass in geometry to each source separately via their opts parameter, at
## least those that support it. Note that if you use rinat, you reverse the order, with
## latitude first, and longitude second, but here it's the reverse for consistency across
## the spocc package
bounds <- c(-125.0,38.4,-121.8,40.9)
occ(query = 'Danaus plexippus', from="inat", geometry=bounds)
## Passing geometry with multiple sources
occ(query = 'Danaus plexippus', from=c("inat","gbif","ecoengine"), geometry=bounds)
# Specify many data sources, another example
ebirdopts = list(region = 'US'); gbifopts = list(country = 'US')
out <- occ(query = 'Setophaga caerulescens', from = c('gbif','inat','bison','ebird'),
gbifopts = gbifopts, ebirdopts = ebirdopts)
occ2df(out)
# Pass in many species names, combine just data to a single data.frame, and
# first six rows
spnames <- c('Accipiter striatus', 'Setophaga caerulescens', 'Spinus tristis')
out <- occ(query = spnames, from = 'gbif', gbifopts = list(georeferenced = TRUE))
df <- occ2df(out)
head(df)
# taxize integration: Pass in taxonomic identifiers
library(taxize)
(ids <- get_ids(names=c("Chironomus riparius","Pinus contorta"), db = c('itis','gbif')))
occ(ids = ids[[1]], from='bison')
occ(ids = ids, from=c('bison','gbif'))
(ids <- get_ids(names="Chironomus riparius", db = 'gbif'))
occ(ids = ids, from='gbif')
(ids <- get_gbifid("Chironomus riparius"))
occ(ids = ids, from='gbif')
(ids <- get_tsn('Accipiter striatus'))
occ(ids = ids, from='bison')
Run the code above in your browser using DataLab