Overview
This activity will focus on working with simple networks. You will need the following data sets.
library( gstudio )
library( popgraph )
data(arapat)
data(lopho)
data(baja)
- Create a de novo network based upon a hypothesized population model for your own organism and study site. Parameterize the nodes with locations and names and visualize it both a-spatially and spatially projected onto a map.
- Estimate a population graph for the arapat data set and visualize it in a
leaflet()
map.
- Estimate from the arapat population graph node-specific parameters such as degree, centrality, and betweenness. Load in the previous sex-baised dispersal data sets. Is the estimated habitat suitability for each sampling locale correlated with any of these graph-theoretic parameters?
cor( coords[,4:12] )
Males Females Suitability MFRatio GenVarArapat GenVarEuphli Betweenness
Males 1 NA NA NA NA NA NA
Females NA 1 NA NA NA NA NA
Suitability NA NA 1 NA NA NA NA
MFRatio NA NA NA 1 NA NA NA
GenVarArapat NA NA NA NA 1 NA NA
GenVarEuphli NA NA NA NA NA 1 NA
Betweenness NA NA NA NA NA NA 1.0000000
Closeness NA NA NA NA NA NA 0.4737195
Degree NA NA NA NA NA NA 0.2742695
Closeness Degree
Males NA NA
Females NA NA
Suitability NA NA
MFRatio NA NA
GenVarArapat NA NA
GenVarEuphli NA NA
Betweenness 0.4737195 0.2742695
Closeness 1.0000000 0.6509092
Degree 0.6509092 1.0000000
- Load in the
lopho
and upiga
population graphs and map out each of their individual population graphs as well as the congruence_topology
. What kind of inferences can you gain by looking at these levels of spatial synchrony?
edges <- to_sf( cong, what = "edges" )
argument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NAargument is not numeric or logical: returning NA
LS0tCnRpdGxlOiAiTmV0d29yayBNb2RlbHMiCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KIVtdKGh0dHBzOi8vbGl2ZS5zdGF0aWNmbGlja3IuY29tLzY1NTM1LzUxMDIyOTkzODMyX2MwN2RkYjVlN2Ffb19kLmpwZykKCiMjIE92ZXJ2aWV3CgpUaGlzIGFjdGl2aXR5IHdpbGwgZm9jdXMgb24gd29ya2luZyB3aXRoIHNpbXBsZSBuZXR3b3Jrcy4gIFlvdSB3aWxsIG5lZWQgdGhlIGZvbGxvd2luZyBkYXRhIHNldHMuCgpgYGB7cn0KbGlicmFyeSggZ3N0dWRpbyApIApsaWJyYXJ5KCBwb3BncmFwaCApCmRhdGEoYXJhcGF0KQpkYXRhKGxvcGhvKQpkYXRhKGJhamEpCmBgYAoKCgoxLiBDcmVhdGUgYSAqZGUgbm92byogbmV0d29yayBiYXNlZCB1cG9uIGEgaHlwb3RoZXNpemVkIHBvcHVsYXRpb24gbW9kZWwgZm9yIHlvdXIgb3duIG9yZ2FuaXNtIGFuZCBzdHVkeSBzaXRlLiAgUGFyYW1ldGVyaXplIHRoZSBub2RlcyB3aXRoIGxvY2F0aW9ucyBhbmQgbmFtZXMgYW5kIHZpc3VhbGl6ZSBpdCBib3RoIGEtc3BhdGlhbGx5IGFuZCBzcGF0aWFsbHkgcHJvamVjdGVkIG9udG8gYSBtYXAuCgpgYGB7cn0KbGlicmFyeSggaWdyYXBoICkKcG9wcyA8LSBjKCJPbHltcGlhIiwiU2VhdHRsZSIsIlN0LiBMb3VpcyIsIkFtZXMiLCJSaWNobW9uZCIpCkEgPC0gbWF0cml4KCAwLCBucm93ID0gNSwgbmNvbD01ICkKcm93bmFtZXMoQSkgPC0gY29sbmFtZXMoQSkgPC0gcG9wcyAKQVsyLDFdIDwtIEFbMSwyXSA8LSAxCkFbMiwzXSA8LSBBWzMsNF0gPC0gMQpBWzQsNV0gPC0gQVs0LDJdIDwtIDEKQVs1LDJdIDwtIDEKCkcgPC0gZ3JhcGguYWRqYWNlbmN5KEEsIG1vZGUgPSAiZGlyZWN0ZWQiKQpwbG90KEcpCmBgYAoKMi4gRXN0aW1hdGUgYSBwb3B1bGF0aW9uIGdyYXBoIGZvciB0aGUgKmFyYXBhdCogZGF0YSBzZXQgYW5kIHZpc3VhbGl6ZSBpdCBpbiBhIGBsZWFmbGV0KClgIG1hcC4gCgpgYGB7cn0KbGlicmFyeSggcG9wZ3JhcGggKQptdiA8LSB0b19tdiggYXJhcGF0ICkKcG9wcyA8LSBhcmFwYXQkUG9wdWxhdGlvbgpnIDwtIHBvcGdyYXBoKCBtdiwgcG9wcyApCnBsb3QoZykKCnN0cmF0YV9jb29yZGluYXRlcyggYXJhcGF0ICkgJT4lCiAgcmVuYW1lKCBQb3B1bGF0aW9uID0gU3RyYXR1bSApIC0+IGNvb3JkcyAKCmRlY29yYXRlX2dyYXBoKGcsIGNvb3JkcyApIC0+IGdyYXBoX2FyYXBhdAoKbm9kZXMgPC0gdG9fc2YoZ3JhcGhfYXJhcGF0LHdoYXQ9Im5vZGVzIikKZWRnZXMgPC0gdG9fc2YoZ3JhcGhfYXJhcGF0LHdoYXQ9ImVkZ2VzIikKCgpsaWJyYXJ5KCBsZWFmbGV0ICkKbGVhZmxldCgpICU+JQogIGFkZE1hcmtlcnMoIGRhdGE9bm9kZXMgKSAlPiUKICBhZGRQb2x5bGluZXMoIGRhdGE9ZWRnZXMgKSAlPiUKICBhZGRQcm92aWRlclRpbGVzKHByb3ZpZGVyID0gcHJvdmlkZXJzJEVzcmkuV29ybGRJbWFnZXJ5KQoKYGBgCgoKMy4gRXN0aW1hdGUgZnJvbSB0aGUgKmFyYXBhdCogcG9wdWxhdGlvbiBncmFwaCBub2RlLXNwZWNpZmljIHBhcmFtZXRlcnMgc3VjaCBhcyBkZWdyZWUsIGNlbnRyYWxpdHksIGFuZCBiZXR3ZWVubmVzcy4gIExvYWQgaW4gdGhlIHByZXZpb3VzIHNleC1iYWlzZWQgZGlzcGVyc2FsIGRhdGEgc2V0cy4gIElzIHRoZSBlc3RpbWF0ZWQgaGFiaXRhdCBzdWl0YWJpbGl0eSBmb3IgZWFjaCBzYW1wbGluZyBsb2NhbGUgY29ycmVsYXRlZCB3aXRoIGFueSBvZiB0aGVzZSBncmFwaC10aGVvcmV0aWMgcGFyYW1ldGVycz8KCmBgYHtyfQoKIyBsb2FkIGluIHRoZSBkaXNwZXJzYWwgYmlhcyBzdHVmZgp1cmwgPC0gImh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9keWVybGFiL0VOVlMtTGVjdHVyZXMvbWFzdGVyL2RhdGEvQXJhcHR1c19EaXNwZXJhbF9CaWFzLmNzdiIKcmVhZF9jc3YodXJsKSAlPiUKICByZW5hbWUoIFBvcHVsYXRpb24gPSBTaXRlICkgLT4gZGYucmF0aW8KCgojIHB1bGwgaW4gdGhlIG5vZGUgYmFzZWQgc3R1ZmYKYiA8LSBkYXRhLmZyYW1lKCBCZXR3ZWVubmVzcyA9IGJldHdlZW5uZXNzKCBncmFwaF9hcmFwYXQgKSApICAlPiUgCiAgbXV0YXRlKCBQb3B1bGF0aW9uID0gcm93bmFtZXMoLikpCmMgPC0gZGF0YS5mcmFtZSggQ2xvc2VuZXNzID0gY2xvc2VuZXNzKCBncmFwaF9hcmFwYXQgKSApICAlPiUgCiAgbXV0YXRlKCBQb3B1bGF0aW9uID0gcm93bmFtZXMoLikpCmQgPC0gZGF0YS5mcmFtZSggRGVncmVlID0gZGVncmVlKCBncmFwaF9hcmFwYXQgKSApICAlPiUgCiAgbXV0YXRlKCBQb3B1bGF0aW9uID0gcm93bmFtZXMoLikpCgojIG1lcmdlIGFsbCBvbnRvIHRoZSBjb29yZGluYXRlcyBkYXRhLmZyYW1lCmNvb3JkcyAlPiUKICBsZWZ0X2pvaW4oIGRmLnJhdGlvICkgJT4lIAogIGxlZnRfam9pbiggYiApICU+JQogIGxlZnRfam9pbiggYyApICU+JQogIGxlZnRfam9pbiggZCApIC0+IGNvb3JkcwogIAoKbGlicmFyeSggR0dhbGx5ICkKCiMgR3JhcGggYW5kIFNleCBSYXRpbyBTdHVmZgpnZ3BhaXJzKCBjb29yZHNbLGMoNCw1LDcsMTAsMTEsMTIpXSkKICAKIyBHcmFwaCBhbmQgU3VpdGFiaWxpdHkKZ2dwYWlycyggY29vcmRzWywgYyg2LDcsOCw5LDEwKV0pCgpnZ3BhaXJzKCBjb29yZHNbLDg6MTJdKQpgYGAKCgoKCjQuIExvYWQgaW4gdGhlIGBsb3Bob2AgYW5kIGB1cGlnYWAgcG9wdWxhdGlvbiBncmFwaHMgYW5kIG1hcCBvdXQgZWFjaCBvZiB0aGVpciBpbmRpdmlkdWFsIHBvcHVsYXRpb24gZ3JhcGhzIGFzIHdlbGwgYXMgdGhlIGBjb25ncnVlbmNlX3RvcG9sb2d5YC4gIFdoYXQga2luZCBvZiBpbmZlcmVuY2VzIGNhbiB5b3UgZ2FpbiBieSBsb29raW5nIGF0IHRoZXNlIGxldmVscyBvZiBzcGF0aWFsIHN5bmNocm9ueT8KCgoKYGBge3J9CmRhdGEoIGxvcGhvICkKZGF0YSggdXBpZ2EgKQpkYXRhKCBiYWphICkKbG9waG8gPC0gZGVjb3JhdGVfZ3JhcGgoIGxvcGhvLCBiYWphKQp1cGlnYSA8LSBkZWNvcmF0ZV9ncmFwaCggdXBpZ2EsIGJhamEpCnBsb3QoIGxvcGhvKQoKYGBgCgoKCmBgYHtyfQpwbG90KCB1cGlnYSApCmBgYAoKCmBgYHtyfQpjb25nIDwtIGNvbmdydWVuY2VfdG9wb2xvZ3kobG9waG8sIHVwaWdhICkKY29uZyA8LSBkZWNvcmF0ZV9ncmFwaChjb25nLCBiYWphICkKcGxvdCggY29uZyApCmBgYAoKCmBgYHtyfQpub2RlcyA8LSB0b19zZiggY29uZywgd2hhdD0ibm9kZXMiICkKCmVkZ2VzIDwtIHRvX3NmKCBjb25nLCB3aGF0ID0gImVkZ2VzIiApCmBgYAoKYGBge3J9CmxlYWZsZXQoKSAlPiUKICBhZGRNYXJrZXJzKCBkYXRhID0gbm9kZXMgKSAlPiUKICBhZGRQb2x5bGluZXMoIGRhdGE9ZWRnZXMgKSAlPiUKICBhZGRQcm92aWRlclRpbGVzKCBwcm92aWRlciA9IHByb3ZpZGVycyRFc3JpLldvcmxkSW1hZ2VyeSkKYGBgCgoK