Learn R Programming


output: html_document editor_options: chunk_output_type: console

quickmapr

There are many packages that already exist or are in active development that support the visualization of spatial data in R. However, there seems to be a gap for those that need to quickly view, compare, and explore the results of a given spatial analysis. The current thinking behind quickmapr is to allow for quick visualization of sp and raster objects.

Functionality for the current release is for easy mapping of multiple layers, simple zooming, panning, labelling, and identifying. These tools are intended for use within an active spatial analysis workflow and not for production quality maps.

quickmapr is built as a series of wrapper functions for the default sp and raster plotting functions. Currently there are 10 commands. As the idea behind this is to quickly map data, an emphasis was given to brevity of function names. The commands are:

  • qmap(): creates the map and controls options
  • zi(): zooms in
  • zo(): zooms out
  • ze(): zoom in to an extent
  • p(): pans
  • l(): adds labels
  • i(): identify features
  • f(): returns to extent of originally created map
  • s(): selects and returns spatial objects
  • m(): measures distances on plot

A function for pulling in basemaps (aerials or topo-quads) from the USGS National Map is included but should be considered experimental.

Example data are available via:

  • data(lake)

##Installation To install the development version:

install.packages("devtools")
library("devtools")
install_github("jhollist/quickmapr")
library("quickmapr")

To install from CRAN (curretnly version 0.1.1):

install.packages("quickmapr")
library("quickmapr")

##Using Quickmapr (work in progress) Basic usage of quickmapr is built around a qmap object which is simply a list of sp or raster objects and a recorded plot. Most of the other quickmpar functions will work with a qmap object.

To create a qmap object:

#First some data
data(lake)
#Create your first quick map and object
qm <- qmap(elev,samples,buffer,width)

There are some other options on qmap that let you change the draw order, coloring of vectors, extent of the map, and whether or not to preform a basic projection check (data are assumed to be in the same coordinate reference system).

So for instance, if you want to zoom in to the extent of one of your layers you could do something like:

#Zoom to the extent of the layer named width
qm<-qmap(elev,samples,buffer,extent=width)

Currently this is only working with object in memory and not pulling from the qmap object.

You can change colors (this is still a bit clunky).

#draw samples and width in red and buffer with blue fill
qm<-qmap(elev,samples,buffer,order = c(2,1,3), colors = c("red","red","blue"), fill=TRUE)

Basemaps can be added from the USGS' National Map (still VERY experimental,slow, and United States Specific)

#Get a Topo Basemap
qm <- qmap(qm,basemap = "topo", resolution = 1000)

Identifying is accomplished with i() and returns different items depending on the type of spatial data.

#identify
i(qm,"samples")
i(qm,"lake")

Zooming and panning are accomplished with zi(),ze(),zo(),f(), and p():

#Zoom in on selected point
zi(qm)
#Zoom in on a chosen extent
ze(qm)
#Zoom out form selected point
zo(qm)
#Go out to full extent
f(qm)
#pan
p(qm)

#EPA Disclaimer The United States Environmental Protection Agency (EPA) GitHub project code is provided on an "as is" basis and the user assumes responsibility for its use. EPA has relinquished control of the information and no longer has responsibility to protect the integrity , confidentiality, or availability of the information. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation or favoring by EPA. The EPA seal and logo shall not be used in any manner to imply endorsement of any commercial product or activity by EPA or the United States Government.

Copy Link

Version

Install

install.packages('quickmapr')

Monthly Downloads

38

Version

0.3.0

License

CC0

Issues

Pull Requests

Stars

Forks

Last Published

June 3rd, 2018

Functions in quickmapr (0.3.0)

qmap

Build qmap object
plot.qmap

Default plotting of a qmap object
quickmapr

Quick visualization of spatial data with simple interactivity
zi

Zooms in on current plot
ze

Zooms in on extent
zo

Zooms out on current plot
print.qmap

Default plotting of a qmap object
s_point

select Points
s

Select
s_poly

select Polys
make_jpw

make jpeg world file
zoom_it

Zoom it
samples

Point data for quickmapr examples
width

Maximum lake width for quickmapr examples
s_line

select Lines
nlcd

Land Cover Data for quickmapr examples
zoom_test

Test range of zoom
p

Pan the current plot
build_map_data

builds a map_data from many input types
examp_lakes

Lakes from the National Lakes Morphometry Dataset for quickmapr examples
get_range

Gets the x and y diff of a qmap_obj
elev

Elevation Data for quickmapr examples
bbox_to_sp

sp bbox to poly
get_sp_type

Pull out essential info on sp class
i_line

Identify Lines
i_point

Identify Points
m

Measure
get_basemap

Get a basemap from USGS National Map
get_colors

gets color from input qmap
buffer

Buffer of Lake Sunapee for quickmapr examples
i

Identify
f

Returns qmap object to original extent
i_grid

Identify Rasters
i_poly

Identify Polys
l

Label features
lake

Lake Data for quickmapr examples
length

Maximum Lake Length line for quickmapr examples