Giter Club home page Giter Club logo

colorist's Introduction

colorist

CRAN status License: GPL v3 Lifecycle: stable R-CMD-check

Maps are essential tools for communicating information about wildlife distributions in space and time. Visualizing patterns of stasis and change can be a challenge, however, especially when distributions exhibit different degrees of spatiotemporal overlap. The typical strategy of layering distributional information from different time periods in a single map often results in occluded or muddied data, depending on how layers are combined. colorist is designed to address this challenge by providing multiple approaches to coloring and visualizing wildlife distributions in space-time using raster data. In addition to enabling simultaneous display of a series of distributions through the use of small multiples, colorist provides functions for extracting several features of interest from a set of distributions and for visualizing those features using HCL (hue-chroma-luminance) color palettes. The resulting maps allow for “fair” visual comparison of intensity values (e.g., occurrence, abundance, or density values) across space and time and can be used to address questions about where, when, and how consistently a species, individual, or group is likely to be found.

Installation

Install colorist from CRAN with:

install.packages("colorist")

Alternatively, you can install the development version of colorist from GitHub with:

# install.packages("remotes")
remotes::install_github("mstrimas/colorist")

Background

The proliferation of tracking data and observations of wildlife populations have enabled remarkable growth in our understanding of how animals move through space and time. The goal of colorist is to help researchers explore and communicate this information by giving them tools to color wildlife distributions in space and time. colorist contains functions to summarize three distributional features of interest across a set of raster distributions: 1) maximum intensity (i.e., the maximum occurrence, abundance, or density value), 2) layer of maximum intensity (i.e., the identity of the layer containing the maximum intensity value), and 3) specificity of the maximum intensity value to the layer of maximum intensity (i.e., the degree to which intensity values are unevenly distributed across layers). Each of these metrics can be mapped to HCL (hue-chroma-luminance) colors in specific ways to ensure that data extracted from different raster layers have approximately equal perceptual weights in subsequent map visualizations.

Usage

colorist works on raster data stored as RasterStack objects. Individual raster layers might represent an ordered temporal sequence of species distributions or utilization distributions. Alternatively, raster layers might represent an unordered set of distributions for multiple species, or individuals, within a single time period. Whatever temporal or identity relationships exist within the stack, all raster layers should contain values in the same units (e.g., abundance, occurrence, or probability density) to ensure that they can be meaningfully compared. The basic workflow for colorist is as follows:

  1. Metrics: Users calculate metrics to describe their distributions.
  2. Color palette: Users choose colors to describe distributions.
  3. Map: Users map distributions in a series of small multiples or in a single map.
  4. Legend: Users generate a legend to accompany their map.

We can demonstrate this workflow using an example dataset of monthly Field Sparrow occurrence probability estimates from eBird Status & Trends.

library(colorist)

# load example data, field sparrow occurrence probability
data("fiespa_occ")

# calculate distribution metrics
r <- metrics_distill(fiespa_occ)

# generate hcl color palette
pal <- palette_timecycle(fiespa_occ)

# map
map_single(r, pal, lambda_i = -2)

# legend
legend_timecycle(pal)

colorist's People

Contributors

mstrimas avatar schuetzingit avatar

Stargazers

Erik Sandvig avatar Willian Vieira avatar  avatar Ludovico Chieffallo avatar Dhanush Shetty avatar  avatar Shinya Uryu avatar Liuyong Ding avatar Benjamin Michael Marshall avatar Bart Hoekstra avatar Matthew King avatar Jeff Hanson avatar Marco Sciaini avatar

Watchers

Tom Auer avatar James Cloos avatar  avatar  avatar  avatar

Forkers

yangxhcaf

colorist's Issues

The deprecated feature ## Colorist

While generating map using map_single(r, pal, lambda_i = -2), a warning message popped up as mentioned below:
Warning message:
The <scale> argument of guides() cannot be FALSE. Use "none" instead as of ggplot2
3.3.4.
ℹ The deprecated feature was likely used in the colorist package.
Please report the issue at https://github.com/mstrimas/colorist/issues.
This warning is displayed once every 8 hours.
Call lifecycle::last_lifecycle_warnings() to see where this warning was generated.

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.