Function Repository Resource:

GloBIData

Source Notebook

Get biotic interactions of a specified taxon using the Global Biotic Interactions (GloBI) API

Contributed by: Jofre Espigule-Pons

ResourceFunction["GloBIData"][taxon]

gives a Graph of taxa that the specified taxon interacts with.

ResourceFunction["GloBIData"][taxon,"Dataset"]

gives a Dataset containing information about the interactions of the specified taxon.

Details and Options

ResourceFunction["GloBIData"] utilizes GloBI's API to find interactions between species and taxa.
Options supported by ResourceFunction["GloBIData"] include:
"InteractionType""InteractsWith"interaction types to return
"TargetTaxon""NotSpecified"target taxon interacting with source taxon
"IncludeObservations"Truewhether to include interaction observations
Supported interaction types include:
"Eats" "EatenBy" "PreysOn"
"PreyedUponBy""Kills""KilledBy"
"ParasiteOf""HasParasite""EndoparasiteOf"
"HasEndoparasite""EctoparasiteOf""HasEctoparasite"
"ParasitoidOf""HasParasitoid""HostOf"
"HasHost""Pollinates""PollinatedBy"
"PathogenOf""HasPathogen""VectorOf"
"HasVector""DispersalVectorOf""HasDispersalVector"
"SymbiontOf""MutualistOf""CommensalistOf"
"FlowersVisitedBy""VisitsFlowersOf""EcologicallyRelatedTo"
"CoOccursWith" "InteractsWith"

Examples

Basic Examples (3) 

Create a taxonomic Graph from the distinct prey taxa of a specific taxon:

In[1]:=
ResourceFunction["GloBIData"][
 Entity["Species", "Species:CarcharodonCarcharias"], "InteractionType" -> "Eats"]
Out[1]=

Create a Graph from all interaction observations between specific taxa and specific interaction type:

In[2]:=
ResourceFunction["GloBIData"][Entity["Species", "Species:CanisLupus"],
  "InteractionType" -> "Eats", "TargetTaxon" -> Entity["Species", "Class:Aves"]]
Out[2]=

Obtain a Dataset with all interaction observations specified by taxa and interaction type:

In[3]:=
ResourceFunction["GloBIData"][
 Entity["Species", "Species:CanisLupus"], "Dataset", "InteractionType" -> "Eats", "TargetTaxon" -> Entity["Species", "Family:Cervidae"]]
Out[3]=

Scope (1) 

Find all parasitic interactions between mites and ticks and their ape hosts:

In[4]:=
ResourceFunction["GloBIData"][
 Entity["Species", "Class:Arachnida"], "Dataset", "InteractionType" -> "ParasiteOf", "TargetTaxon" -> Entity["Species", "Family:Hominidae"]]
Out[4]=

Neat Examples (1) 

Create a food web of several species that interact with each other:

In[5]:=
getSpeciesEatenBy[species_] := Union@Flatten@
   StringCases[
    Normal@ResourceFunction["GloBIData"][species, "Dataset", "InteractionType" -> "Eats"][[All, "TargetTaxonName"]], __ ~~ " " ~~ __]
In[6]:=
speciesEatenByRiverOtter = getSpeciesEatenBy[Entity["Species", "Species:LutraLutra"]];
speciesEatenByTrout = getSpeciesEatenBy["Salmo trutta"];
speciesEatenBySprat = getSpeciesEatenBy["Sprattus sprattus"];
In[7]:=
Labeled[Legended[
  Graph[Join[
    Map[Style["Salmo trutta" -> #, Orange] &, speciesEatenByTrout], Map[Style["Lutra lutra" -> #, Blue] &, speciesEatenByRiverOtter], Map[Style["Sprattus sprattus" -> #, Darker[Green]] &, speciesEatenBySprat]], ImageSize -> Large, VertexLabels -> Placed["Name", Tooltip]],
  SwatchLegend[{Blue, Orange, Darker[Green]}, {"River Otter", "Brook Trout", "Sprat"}]], Style["Foodweb of three different species", FontFamily -> "Helvetica", Bold, FontSize -> 18], Top]
Out[7]=

Publisher

Jofre Espigule-Pons

Version History

  • 1.0.0 – 24 July 2020

Source Metadata

Related Resources

Author Notes

"Unless otherwise noted, source code is released under GLPv3 and data is available under Creative Commons Attribution 4.0 International License. We are trying to do the best we can to ensure that the references to the original data sources are preserved and attributed. If you feel that there's better ways to do this, please let us know."

License Information