Overview

This activity will let you explore some of the issues associated with developing resistance models. This is rather complex process because you’ll have to:

  1. Decide what features to entertain as putative predictor values.

  2. Decide which genetic distance metrics you’ll be estimating.

  3. Develop raster sets based upon differences in at least granularity and magnitude.

  4. Estimate distances using different movement models.

  5. Explore the set of predictors to find suitable combinations.

  6. Model build to best describe the entire system.

library( vegan )
Loading required package: permute
Loading required package: lattice
This is vegan 2.5-7
library( raster )
Loading required package: sp
library( gstudio )
library( gdistance ) 
Loading required package: igraph

Attaching package: 'igraph'
The following object is masked from 'package:raster':

    union
The following object is masked from 'package:vegan':

    diversity
The following object is masked from 'package:permute':

    permute
The following objects are masked from 'package:stats':

    decompose, spectrum
The following object is masked from 'package:base':

    union
Loading required package: Matrix

Attaching package: 'gdistance'
The following object is masked from 'package:igraph':

    normalize

Here are two sets of data that you can use to explore the creation of rasters and the analysis of \(G \approx f(E)\) from complete data sets.

Activity - Large Scale Creation

These bioclimatic rasters are from Baja California and cover temperature and precipitation variables and can be used to examine large-scale landscape genetic processes. Download this zip archive (if you do not already have it) and expand it in your Workshop Project Folder.

  1. Using the arapat data and the bioclimatic rasters in the zip archive (the key to what they represent is here), come up with a hypothesis using at least one of the raster layers based upon a categorical or threshold value. From this, derive a base raster where values in it are 0/1 and then estimate a range of resistances using the create_resistances() function.

  2. Select a subset of arapat populations and make sure their location is on a full raster pixel and that they are connectable. I would recommend starting small, 5-10 sites spread throughout the landscape.

  3. Crop your raster so that it has a suitable buffer around your sample locations.

  4. Estimate transition, geoCoreection, and resulting costDistance (a Least-Cost approach) matrices for these layers.

  5. Decide on a suitable population-level genetic distance metric (among these populations) and then estimate the Mantel correlation between your hypothesized landscape distance matrices and genetic distance. Plot Mantel r as a function of resistance ratio (I usually log transform them).

Activity - Comparing Movmement Model, Cost Ratio, and Features

Below is a link to a small zip archive containing a complete set of R data matrices files for Cornus florida including raw rasters (saved as *.asc files), and a complete set of resistance matrices estimated using both least cost path (lcp.) and circuit theory (ct.) for five landscape features (Cornus canopy .cf.; coniferous vegitation .cv., open fields .fd., mixed hardwood density .mh, and roads .rd. each of which are estimated on ratios 1:10 - 10:1. There is also distances based upon elevation change and euclidean distance.

download.file(url="https://gitlab.com/ThurstonCounty/landscape-genetics-workshop/-/raw/master/data/dogwood.zip?inline=false",destfile = "dogwood.zip")
unzip( "dogwood.zip")
unlink( "dogwood.zip")

Each of these rasters is saved already as a matrix whose variable is D. There is also a Genetic Distance matrix baed upon pollen pool genetic structure named G.rda.

Download these files and explore which combination of features, resistance ratios, and movement models best explains first-order relationships between the set of all potential landscape resistence features and the observed genetic differences measured in pollen pool genetic structure.

LS0tCnRpdGxlOiAiUmVzaXN0YW5jZSBBY3Rpdml0eSIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKIVtdKGh0dHBzOi8vbGl2ZS5zdGF0aWNmbGlja3IuY29tLzY1NTM1LzUxMDIyMTY0Mjk4XzFhYTliOGRmNzZfY19kLmpwZykKCgojIyBPdmVydmlldwoKVGhpcyBhY3Rpdml0eSB3aWxsIGxldCB5b3UgZXhwbG9yZSBzb21lIG9mIHRoZSBpc3N1ZXMgYXNzb2NpYXRlZCB3aXRoIGRldmVsb3BpbmcgcmVzaXN0YW5jZSBtb2RlbHMuICBUaGlzIGlzIHJhdGhlciBjb21wbGV4IHByb2Nlc3MgYmVjYXVzZSB5b3UnbGwgaGF2ZSB0bzoKCjEuIERlY2lkZSB3aGF0IGZlYXR1cmVzIHRvIGVudGVydGFpbiBhcyBwdXRhdGl2ZSBwcmVkaWN0b3IgdmFsdWVzLiAgCgoyLiBEZWNpZGUgd2hpY2ggZ2VuZXRpYyBkaXN0YW5jZSBtZXRyaWNzIHlvdSdsbCBiZSBlc3RpbWF0aW5nLiAgCgozLiBEZXZlbG9wIHJhc3RlciBzZXRzIGJhc2VkIHVwb24gZGlmZmVyZW5jZXMgaW4gYXQgbGVhc3QgZ3JhbnVsYXJpdHkgYW5kIG1hZ25pdHVkZS4gIAoKNC4gRXN0aW1hdGUgZGlzdGFuY2VzIHVzaW5nIGRpZmZlcmVudCBtb3ZlbWVudCBtb2RlbHMuCgo1LiBFeHBsb3JlIHRoZSBzZXQgb2YgcHJlZGljdG9ycyB0byBmaW5kIHN1aXRhYmxlIGNvbWJpbmF0aW9ucy4KCjYuIE1vZGVsIGJ1aWxkIHRvIGJlc3QgZGVzY3JpYmUgdGhlIGVudGlyZSBzeXN0ZW0uCgoKYGBge3J9CmxpYnJhcnkoIHZlZ2FuICkKbGlicmFyeSggcmFzdGVyICkKbGlicmFyeSggZ3N0dWRpbyApCmxpYnJhcnkoIGdkaXN0YW5jZSApIApgYGAKCgpIZXJlIGFyZSB0d28gc2V0cyBvZiBkYXRhIHRoYXQgeW91IGNhbiB1c2UgdG8gZXhwbG9yZSB0aGUgY3JlYXRpb24gb2YgcmFzdGVycyBhbmQgdGhlIGFuYWx5c2lzIG9mICRHIFxhcHByb3ggZihFKSQgZnJvbSBjb21wbGV0ZSBkYXRhIHNldHMuICAKCgojIyBBY3Rpdml0eSAtIExhcmdlIFNjYWxlIENyZWF0aW9uCgpbVGhlc2UgYmlvY2xpbWF0aWMgcmFzdGVyc10oaHR0cHM6Ly9kcml2ZS5nb29nbGUuY29tL2ZpbGUvZC8xeUszU3VqUXZCRS10WWVQYmtXbnFaQ203d0RMUTR0OWwvdmlldz91c3A9c2hhcmluZykgYXJlIGZyb20gQmFqYSBDYWxpZm9ybmlhIGFuZCBjb3ZlciB0ZW1wZXJhdHVyZSBhbmQgcHJlY2lwaXRhdGlvbiB2YXJpYWJsZXMgYW5kIGNhbiBiZSB1c2VkIHRvIGV4YW1pbmUgbGFyZ2Utc2NhbGUgbGFuZHNjYXBlIGdlbmV0aWMgcHJvY2Vzc2VzLiAgRG93bmxvYWQgdGhpcyB6aXAgYXJjaGl2ZSAoaWYgeW91IGRvIG5vdCBhbHJlYWR5IGhhdmUgaXQpIGFuZCBleHBhbmQgaXQgaW4geW91ciBXb3Jrc2hvcCBQcm9qZWN0IEZvbGRlci4KCgoKCgoxLiBVc2luZyB0aGUgYGFyYXBhdGAgZGF0YSBhbmQgdGhlIGJpb2NsaW1hdGljIHJhc3RlcnMgaW4gdGhlIHppcCBhcmNoaXZlICh0aGUga2V5IHRvIHdoYXQgdGhleSByZXByZXNlbnQgaXMgW2hlcmVdKGh0dHBzOi8vd3d3LndvcmxkY2xpbS5vcmcvZGF0YS9iaW9jbGltLmh0bWwpKSwgY29tZSB1cCB3aXRoIGEgaHlwb3RoZXNpcyB1c2luZyBhdCBsZWFzdCBvbmUgb2YgdGhlIHJhc3RlciBsYXllcnMgYmFzZWQgdXBvbiBhIGNhdGVnb3JpY2FsIG9yIHRocmVzaG9sZCB2YWx1ZS4gIEZyb20gdGhpcywgZGVyaXZlIGEgKmJhc2UgcmFzdGVyKiB3aGVyZSB2YWx1ZXMgaW4gaXQgYXJlIDAvMSBhbmQgdGhlbiBlc3RpbWF0ZSBhIHJhbmdlIG9mIHJlc2lzdGFuY2VzIHVzaW5nIHRoZSBgY3JlYXRlX3Jlc2lzdGFuY2VzKClgIGZ1bmN0aW9uLiAgCgoKCjIuIFNlbGVjdCBhIHN1YnNldCBvZiBgYXJhcGF0YCBwb3B1bGF0aW9ucyBhbmQgKiptYWtlIHN1cmUqKiB0aGVpciBsb2NhdGlvbiBpcyBvbiBhIGZ1bGwgcmFzdGVyIHBpeGVsIGFuZCB0aGF0IHRoZXkgYXJlICoqY29ubmVjdGFibGUqKi4gIEkgd291bGQgcmVjb21tZW5kIHN0YXJ0aW5nIHNtYWxsLCA1LTEwIHNpdGVzIHNwcmVhZCB0aHJvdWdob3V0IHRoZSBsYW5kc2NhcGUuCgozLiBDcm9wIHlvdXIgcmFzdGVyIHNvIHRoYXQgaXQgaGFzIGEgc3VpdGFibGUgYnVmZmVyIGFyb3VuZCB5b3VyIHNhbXBsZSBsb2NhdGlvbnMuCgo0LiBFc3RpbWF0ZSB0cmFuc2l0aW9uLCBnZW9Db3JlZWN0aW9uLCBhbmQgcmVzdWx0aW5nIGNvc3REaXN0YW5jZSAoYSBMZWFzdC1Db3N0IGFwcHJvYWNoKSBtYXRyaWNlcyBmb3IgdGhlc2UgbGF5ZXJzLgoKNS4gRGVjaWRlIG9uIGEgc3VpdGFibGUgcG9wdWxhdGlvbi1sZXZlbCBnZW5ldGljIGRpc3RhbmNlIG1ldHJpYyAoYW1vbmcgdGhlc2UgcG9wdWxhdGlvbnMpIGFuZCB0aGVuIGVzdGltYXRlIHRoZSBNYW50ZWwgY29ycmVsYXRpb24gYmV0d2VlbiB5b3VyIGh5cG90aGVzaXplZCBsYW5kc2NhcGUgZGlzdGFuY2UgbWF0cmljZXMgYW5kIGdlbmV0aWMgZGlzdGFuY2UuICBQbG90IE1hbnRlbCAqciogYXMgYSBmdW5jdGlvbiBvZiByZXNpc3RhbmNlIHJhdGlvIChJIHVzdWFsbHkgbG9nIHRyYW5zZm9ybSB0aGVtKS4KCgoKIyMgQWN0aXZpdHkgLSBDb21wYXJpbmcgTW92bWVtZW50IE1vZGVsLCBDb3N0IFJhdGlvLCBhbmQgRmVhdHVyZXMKCkJlbG93IGlzIGEgbGluayB0byBhIHNtYWxsIHppcCBhcmNoaXZlIGNvbnRhaW5pbmcgYSBjb21wbGV0ZSBzZXQgb2YgUiBkYXRhIG1hdHJpY2VzIGZpbGVzIGZvciAqQ29ybnVzIGZsb3JpZGEqIGluY2x1ZGluZyByYXcgcmFzdGVycyAoc2F2ZWQgYXMgKi5hc2MgZmlsZXMpLCBhbmQgYSBjb21wbGV0ZSBzZXQgb2YgcmVzaXN0YW5jZSBtYXRyaWNlcyBlc3RpbWF0ZWQgdXNpbmcgYm90aCBsZWFzdCBjb3N0IHBhdGggKGBsY3AuYCkgYW5kIGNpcmN1aXQgdGhlb3J5IChgY3QuYCkgZm9yIGZpdmUgbGFuZHNjYXBlIGZlYXR1cmVzIChDb3JudXMgY2Fub3B5IGAuY2YuYDsgY29uaWZlcm91cyB2ZWdpdGF0aW9uIGAuY3YuYCwgb3BlbiBmaWVsZHMgYC5mZC5gLCBtaXhlZCBoYXJkd29vZCBkZW5zaXR5IGAubWhgLCBhbmQgcm9hZHMgYC5yZC5gIGVhY2ggb2Ygd2hpY2ggYXJlIGVzdGltYXRlZCBvbiByYXRpb3MgMToxMCAtIDEwOjEuICBUaGVyZSBpcyBhbHNvIGRpc3RhbmNlcyBiYXNlZCB1cG9uIGVsZXZhdGlvbiBjaGFuZ2UgYW5kIGV1Y2xpZGVhbiBkaXN0YW5jZS4KCgpgYGB7ciBldmFsPUZBTFNFfQpkb3dubG9hZC5maWxlKHVybD0iaHR0cHM6Ly9naXRsYWIuY29tL1RodXJzdG9uQ291bnR5L2xhbmRzY2FwZS1nZW5ldGljcy13b3Jrc2hvcC8tL3Jhdy9tYXN0ZXIvZGF0YS9kb2d3b29kLnppcD9pbmxpbmU9ZmFsc2UiLGRlc3RmaWxlID0gImRvZ3dvb2QuemlwIikKdW56aXAoICJkb2d3b29kLnppcCIpCnVubGluayggImRvZ3dvb2QuemlwIikKYGBgCgpFYWNoIG9mIHRoZXNlIHJhc3RlcnMgaXMgc2F2ZWQgYWxyZWFkeSBhcyBhIG1hdHJpeCB3aG9zZSB2YXJpYWJsZSBpcyBgRGAuICBUaGVyZSBpcyBhbHNvIGEgR2VuZXRpYyBEaXN0YW5jZSBtYXRyaXggYmFlZCB1cG9uIHBvbGxlbiBwb29sIGdlbmV0aWMgc3RydWN0dXJlIG5hbWVkIGBHLnJkYWAuCgpEb3dubG9hZCB0aGVzZSBmaWxlcyBhbmQgZXhwbG9yZSB3aGljaCBjb21iaW5hdGlvbiBvZiBmZWF0dXJlcywgcmVzaXN0YW5jZSByYXRpb3MsIGFuZCBtb3ZlbWVudCBtb2RlbHMgYmVzdCBleHBsYWlucyBmaXJzdC1vcmRlciByZWxhdGlvbnNoaXBzIGJldHdlZW4gdGhlIHNldCBvZiBhbGwgcG90ZW50aWFsIGxhbmRzY2FwZSByZXNpc3RlbmNlIGZlYXR1cmVzIGFuZCB0aGUgb2JzZXJ2ZWQgZ2VuZXRpYyBkaWZmZXJlbmNlcyBtZWFzdXJlZCBpbiBwb2xsZW4gcG9vbCBnZW5ldGljIHN0cnVjdHVyZS4KCgoKCgoKCgoKCgoKCmBgYHtyIGVjaG89RkFMU0V9CnN5c3RlbSggInJtIC1yZiBkb2d3b29kIikKYGBgCgoKCgoKCgoKCgoKCgoKCgoKCgoKCg==