GithubHelp home page GithubHelp logo

peterbat1 / enm_taylor_diagram Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 41 KB

Application of Taylor Diagrams to Ecological Niche Models/Species Distribution Models

License: GNU Affero General Public License v3.0

R 100.00%
map-comparison model-checking niche-modeling niche-modelling species-distribution-modeling species-distribution-modelling species-distribution-models

enm_taylor_diagram's Introduction

ENM Taylor Diagram

Application of Taylor Diagrams to Ecological Niche Models/Species Distribution Models

Taylor (2001) published a paper which introduced an innovative plot or diagram which summarised three attributes of spatial model output in a 2-D plot, and was designed to contrast these attributes between a "reference" model and one or more alternate models. The reference model may be a baseline model output, or observations of a complex system. The alternate models may be alternate observations, observations at a different time, or the output of predictive models.

Originally developed for applications in the atmospheric sciences (e.g. meteorology, climatology), Taylor Diagrams have been applied in other disciplines including hydrology.

Curiously, they have not been adopted by developers of ecological niche models (also referred to as species distribution models). This repository is my humble attempt to provide a useful script to allow ENM developers to use Taylor Diagrams.

This script is inspired by the source code for the function taylor.diagram() from the R-package plotrix written by Olivier Eterradossi and Jim Lemon.

The original source code is available here.

Some aspects of the original data flow and some methods/code fragments have been retained in the version available in this repository. Although there are some borrowings from the original function, this version is a major re-write using the features and functions of the R-packages ggplot2 and ggrepel.

Downloading and using the function:

  1. Click on the green Code button (top right of screen) to download a zip file containing the R-script.

  2. Unzip the file in a folder of your chooosing.

  3. To use the function in your R-scripts, using the source() funciton to load the script into your R session:

source("path/to/taylor_diagram.R")

Dependencies:

This function requires the R libraries ggplot2 and ggrepel.

Alternate inplementations of Taylor Diagrams in R

Other implementations of Taylor Diagrams in R include:

taylor.diagram() in the R-package plotrix (of course);

R-package openair (available from the CRAN repository) which has a function TaylorDiagram(); and,

An implementation using ggplot2 in the GitHub Repository https://github.com/shirazipooya/Taylor.Diagram which appears to be incomplete and unchanged for a number of years.

To do:

  • Make the parameter normalise work; at present it is ignored.
  • Add an optional legend.
  • Give greater control over plot symbols, colours and labels.

References

Taylor, K. E. 2001. Summarizing multiple aspects of model performance in a single diagram. Journal of Geophysical Research: Atmospheres 106:7183โ€“7192.

enm_taylor_diagram's People

Contributors

peterbat1 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.