### Annual lobster catch by state: animated ggplot2 maps

Producing an animated ggplot2 map showing annual lobster catch by state since 1950.

I'm a conservation researcher interested in the application of GIS, remote sensing, and data science biodiversity conservation. As I learn new tools and techniques, I'll post my notes here in the hopes that they'll be of use to others. Most posts will be GIS-themed and will use R or other open source tools.

Producing an animated ggplot2 map showing annual lobster catch by state since 1950.

Analyzing dynamical systems using R. Using the Lotka-Volterra predator prey model as a case-study, I use the R packages deSolve and FME to solve a system of differential equations and perform a sensitivity analysis, respectively.

In this post, I the use the Twitter API to access geocoded tweets on spruce masting events in North America. Based on this crowd sourced data, I produce a map of spruce masting.

Highlighting the least eBirded counties in the US by state.

Scraping the ebird website to find the top hotspot in each county. Covers scraping data from websites with rvest, manipulating spatial data with sf, and making interactive maps with leaflet.

The new R package sf, which replaces sp for handling spatial objects, is designed to play nicely with the Tidyverse. In this post I show how sf objects are stored as data frames and how this allows them to work with with ggplot2, dplyr, and tidyr.

An introduction to the spatial database management system PostGIS, with a focus on using R as an interface to PostGIS. In this post I provide an overview of the different spatial data types and the use of coordinate systems in PostGIS.

Tutorial on transferring and syncing data between an Amazon Web Services (AWS) EC2 instance and your local machine, with GitHub and S3.

An introduction to the spatial database management system PostGIS, with a focus on using R as an interface to PostGIS.

Detailed instructions for how to quickly get a cloud-based, tidyverse-ready instance of RStudio Server running on an Amazon Web Services EC2 instance.

Comparing the performance of open-source integer linear programming solvers. In this post, I look at the SCIP solver, which doesn't have an R interface.

Comparing the performance of open-source integer linear programming solvers. The focus is on finding an open-source alternative to Gurobi for conservation prioritization and proteced area design.

A field guide to all the open-source integer linear programming solvers that have R packages. The focus is on finding an open-source alternative to Gurobi for conservation prioritization and proteced area design.

Introduction to Docker containers. In this post I build a Docker container for linear programming in R.

Solving Marxan-like systematic conservation planning problems using Integer Linear Programming and Ineger Quadratic Programming techniques with the R interface to the Gurobi Optimizer.

Marxan is the most widely used software for systematic reserve design. In this post, I dealve into the details of Marxan and emulate it in R.

Noah Strycker just broke the global big year record, seeing over 6,000 bird species in 2015. I map his route with ggplot and a couple spatial clustering algorithms.

Mapping the longest regularly scheduled commercial flights in the world using R and ggplot2. Includes a discussion of the challenges associated with maps for which the central meridian is not at Greenich.

Considering the benefits of hexagonal grids relative to square grids for spatial sampling and analysis, and generating hexagonal grids in R.

Noah Strycker just broke the global big year record, seeing over 6,000 bird species in 2015. I use ggplot to visualize his sightings over the course of the year.

Exploring the unexpected results that can arise in GEOS topology operations from problems with numerical precision or registration in coordinates.

Using Monte Carlo methods, randomly placed spatial objects, and topological operations in R to estimate pi.

A cheatsheet and showcase of Markdown syntax meant to show how different elements will be rendered.