Extracting point data from vector and raster maps (for free)

I recently wrote a post on my research blog all about using free GIS software to extract point data from vector and raster maps. I won’t repeat it here, but this is the upshot:

One of the most powerful uses of GIS technology is to sample and analyze data from GIS data layers. For instance, if you have a set of GPS coordinates for a species of plant from Utah, and you want to find out what range of climate types the plant grows in, you can use digital raster layers for climate (high and low temperature, rainfall, etc.) to extract estimates for the conditions that your plants experience at the locations where you sampled it. Then, you can use that data for many purposes: reconstruct it on a phylogenetic tree, test for divergence in climate regime among populations, test for associations among variable (for instance among soil and climate). Really, anything.

Let me know if you have any questions! I’m happy to help people get this going for specific data sets.

Text File To kml – Perl Script

Google Earth reads and writes a special form of xml file called a kml (keyhole markup language). Many other geographic viewers and GISs can also read kml files so it’s not a bad thing to be able to make kml files for sample location data. I assume there are many ways to do this. The way I have done it is via a perlscript that I wrote. This post provides that script and explains what it does.

Here is the script, its called texttokml.pl.

It’s very simple and I commented it heavily so even the most naive perl programmer should be able to figure it out and change it but if you want me to hold your hand just ask.

Explanation follows . . .

Continue reading

R script for plotting STRUCTURE results (Q values) (Rose)

This is an R Script that plots individual Q values and labels populations. It can be modified to take average group membership from CLUMPP output and/or to import different population names and higher level groupings from elsewhere.

N.B. I haven’t run this on very many data sets, so it will probably need to be tweaked for your results. But please leave a comment if you run into any problems.

Continue reading