Learn R Programming

GeoXp (version 1.6.2)

scattermap: Interactive scatterplot and map

Description

The function scattermap draws a scatterplot of the given variables indicated in names.var and a map with sites of coordinates coordinates(sp.obj). Boxplots of each variable names.var[1] and names.var[2] are represented below the x-axis and y-axis.

Usage

scattermap(sp.obj, names.var, lin.reg=TRUE, quantiles=TRUE, names.attr=names(sp.obj), criteria=NULL, carte=NULL, identify=FALSE, cex.lab=0.8, pch=16, col="lightblue3",xlab="", ylab="", axes=FALSE, lablong="", lablat="")

Arguments

sp.obj
object of class extending Spatial-class
names.var
a vector of two characters : 1st name corresponds to the x-variable, 2nd name corresponds to the y-variable
lin.reg
If TRUE, drawing of the linear predictor for `response' in linear model
quantiles
a boolean to represent the Additive Quantile Regression Smoothing
names.attr
names to use in panel (if different from the names of variable used in sp.obj)
criteria
a vector of boolean of size the number of Spatial Units, which permit to represent preselected sites with a cross, using the tcltk window
carte
matrix with 2 columns for drawing spatial polygonal contours : x and y coordinates of the vertices of the polygon
identify
if not FALSE, identify plotted objects (currently only working for points plots). Labels for identification are the row.names of the attribute table row.names(as.data.frame(sp.obj)).
cex.lab
character size of label
pch
16 by default, symbol for selected points
col
"lightblue3" by default, color of bars on the histogram
xlab
a title for the graphic x-axis
ylab
a title for the graphic y-axis
axes
a boolean with TRUE for drawing axes on the map
lablong
name of the x-axis that will be printed on the map
lablat
name of the y-axis that will be printed on the map

Value

In the case where user click on save results button, a vector of integer is created as a global variable in last.select object. It corresponds to the number of spatial units selected just before leaving the Tk window.

Details

Each site is associated to a value of names.var[1] and a value of names.var[2]. There is an interactivity between the two windows: the sites selected by `point' or `polygon' on the scatterplot are represented on the map in red; sites selected on the map are then represented in red on the scatterplot. Users have the possibility to draw linear predictor for `response' in linear model (option lin.reg) or conditionnal quantile regression spline (option quantiles).

References

Thibault Laurent, Anne Ruiz-Gazen, Christine Thomas-Agnan (2012), GeoXp: An R Package for Exploratory Spatial Data Analysis. Journal of Statistical Software, 47(2), 1-23.

Roger S.Bivand, Edzer J.Pebesma, Virgilio Gomez-Rubio (2009), Applied Spatial Data Analysis with R, Springer.

See Also

dblehistomap, histobarmap, scattermap, densitymap

Examples

Run this code
######
# data on price indices of real estate in France
data(immob)
row.names(immob)<-immob$Nom

# immob is a data.frame object. We have to create
# a Spatial object, by using first the longitude and latitude
# to create Spatial Points object ...
immob.sp = SpatialPoints(cbind(immob$longitude,immob$latitude))
# ... and then by integrating other variables to create SpatialPointsDataFrame
immob.spdf = SpatialPointsDataFrame(immob.sp, immob)
# For more details, see vignette('sp', package="sp")

# optional : we add some contours that don't correspond to the spatial unit
# but are nice for mapping
require("maptools")
midiP <- readShapePoly(system.file("shapes/region.shp", package="GeoXp")[1])
cont_midiP<-spdf2list(midiP[-c(22,23),])$poly

# a example of use
scattermap(immob.spdf,c("prix.vente","prix.location"),
carte= cont_midiP, xlab="Average sell price",ylab="Average rent price",
identify=TRUE, cex.lab=0.6)



######
# data eire
eire <- readShapePoly(system.file("etc/shapes/eire.shp", package="spdep")[1],
ID="names", proj4string=CRS("+proj=utm +zone=30 +units=km"))


# example of use of scattermap
scattermap(eire, c("ROADACC","OWNCONS"),lin.reg=TRUE,
xlab="Roads",ylab="Consomation Rate",col="purple")

Run the code above in your browser using DataLab