Fig. 2: Triplots for redundancy analysis (RDA) range-wide for the significant axes (a = RDA1 vs. RDA2; b = RDA2 vs. RDA3) illustrating how individuals (triangles) separate with environmental variables (arrows) and genetic data (SNPs; cluster of points around the origin).

Individuals (▲) are color coded by subspecies; points representing SNPs are color coded by whether they are candidate adaptive SNPs (black) or not (gray). Triplot scaling is symmetrical (scaled by the square root of eigenvalues).