GIS with R (or without ArcGIS) - nyu. · PDF fileGIS with R (or without ArcGIS) Omar...

35
GIS with R (or without ArcGIS) Omar García-Ponce New York University Princeton Spring Lab Workshop May 7, 2013 Omar García-Ponce (NYU) GIS with R

Transcript of GIS with R (or without ArcGIS) - nyu. · PDF fileGIS with R (or without ArcGIS) Omar...

GIS with R(or without ArcGIS)

Omar García-PonceNew York University

Princeton

Spring Lab Workshop

May 7, 2013

Omar García-Ponce (NYU) GIS with R

Why use R?

1 ArcGIS is expensive (only available for Windows users)2 R is free (available for Linux, Mac and Windows users)3 The simplest map in R requires no data files4 R allows more “control” over features5 You can run the same script and produce the same map

Omar García-Ponce (NYU) GIS with R

Getting started

Basic tools:

library(maps) #for creating geographical maps

library(mapdata) #contains basic data for ’maps’

library(maptools) #tools for handling spatial objects

library(mapproj) #for creating projected maps

library(raster) #tools to deal with raster maps

library(ggplot2) #to create maps

library(gpclib) #general polygon clipper

Omar García-Ponce (NYU) GIS with R

Simple Maps

Omar García-Ponce (NYU) GIS with R

A very simple map

Omar García-Ponce (NYU) GIS with R

Another simple map

Omar García-Ponce (NYU) GIS with R

Zoomed in

Omar García-Ponce (NYU) GIS with R

Read in data: shapefiles

library(maptools) #for shapefiles

‘readShapePoly’

Read in a polygon shape layer (e.g., administrativeboundaries, national parks, etc.). This means the layer is oftype “polygon” (i.e. not lines, such as roads or rivers)

‘readShapeLines’

read in a line shape layer

‘readShapePoints’

read in a point shape layer

Omar García-Ponce (NYU) GIS with R

Read in data: GPS points

Read in your data, as you would any other .csv file.For GPS points, must have columns individually forlatitude and longitude.Must be in decimal degrees.

Omar García-Ponce (NYU) GIS with R

Example (by Kimberly Gilbert)

Omar García-Ponce (NYU) GIS with R

Adding layers

1 Plot the base map

This will be the final shape and size of your full map

2 Plot layers or data onto this map

Add your shape files or data pointsPlotting occurs in order, unless you use transparency, youwill cover things up.

3 Add any final touches you’d like

Remember to use “add=TRUE” for every step after the first

Omar García-Ponce (NYU) GIS with R

Plot map 1

Omar García-Ponce (NYU) GIS with R

Add map 2

Omar García-Ponce (NYU) GIS with R

Add shapefile layer

Omar García-Ponce (NYU) GIS with R

Add GPS points

Omar García-Ponce (NYU) GIS with R

Add extras

Omar García-Ponce (NYU) GIS with R

More Involved Maps

Omar García-Ponce (NYU) GIS with R

Shapefiles

The data that comprise a shapefile are usually stored in (atleast) three individual files:

1 .shp: shape format; the feature geometry itself

2 .shx: shape index format; a positional index of the featuregeometry.

3 .dbf: attribute format; columnar attributes for each shape.

Omar García-Ponce (NYU) GIS with R

Manipulate DBFs to add attributes

Omar García-Ponce (NYU) GIS with R

Load shapefile and set breaks to map the data

Omar García-Ponce (NYU) GIS with R

Plot the distribution of the data and colors assigned

0 100 200 300 400 500 600

0.0

0.2

0.4

0.6

0.8

1.0

ecdf(x$var)

x

Omar García-Ponce (NYU) GIS with R

Plot the map

Omar García-Ponce (NYU) GIS with R

Add a border

Omar García-Ponce (NYU) GIS with R

Add a title

Omar García-Ponce (NYU) GIS with R

Add a north arrow

Omar García-Ponce (NYU) GIS with R

Add a legend

Omar García-Ponce (NYU) GIS with R

Maps with ggplot

Omar García-Ponce (NYU) GIS with R

Getting started (by James Cheshire)

Omar García-Ponce (NYU) GIS with R

Plot the data to set up a ggplot object indicating the input data (i.e., the

attribute table of the shapefile), and what parts wish to use:

Omar García-Ponce (NYU) GIS with R

You can alter the nature of the points

Omar García-Ponce (NYU) GIS with R

You can add text

Omar García-Ponce (NYU) GIS with R

Now get the shapefiles into a format that can bemapped using the fortify( ) function...

Omar García-Ponce (NYU) GIS with R

Create the map

Omar García-Ponce (NYU) GIS with R

Customize the map

Omar García-Ponce (NYU) GIS with R

Zonal Statistics with QGIS

Omar García-Ponce (NYU) GIS with R