plot.ppp {spatstat} | R Documentation |
Plot a two-dimensional spatial point pattern
## S3 method for class 'ppp': plot(x, main, ..., chars, cols, use.marks=TRUE, add=FALSE, maxsize, markscale)
x |
The spatial point pattern to be plotted.
An object of class "ppp" ,
or data which can be converted into
this format by as.ppp() .
|
main |
text to be displayed as a title above the plot. |
... |
extra arguments that will be passed to the plotting functions
plot.default , points and/or
symbols .
|
chars |
plotting character(s) used to plot points. |
cols |
the colour(s) used to plot points. |
use.marks |
logical flag; if TRUE , plot points using a different
plotting symbol for each mark;
if FALSE , only the locations of the points will be plotted,
using points() .
|
add |
logical flag; if TRUE ,
just the points are plotted, over the existing plot.
A new plot is not created, and
the window is not plotted.
|
maxsize |
maximum size of the circles/squares plotted
when x is a marked point pattern with
numerical marks.
Incompatible with markscale .
|
markscale |
physical scale factor determining the sizes of the
circles/squares plotted when x is a marked point pattern with
numerical marks. Incompatible with maxsize .
|
This is the plot
method for
point pattern datasets (of class "ppp"
, see ppp.object
).
First the observation window x$window
is plotted.
Then the points themselves are plotted,
in a fashion that depends on their marks,
as follows.
use.marks = FALSE
,
then the locations of all points will be plotted
using a single plot character
x$marks
is a factor, then
each level of the factor is
represented by a different plot character.
x$marks
is a numeric vector,
the marks are rescaled to the unit interval and
each point is represented by a circle
with radius proportional to the rescaled mark
(if the value is positive) or a square with side proportional
to the absolute value of the rescaled mark (if the value is negative).
x$marks
is neither numeric nor a factor,
then each possible mark will be represented by a
different plotting character. The default is to
represent the ith smallest mark value by
points(..., pch=i)
.
Plotting of the window x$window
is performed by
plot.owin
. This plot may be modified
through the ...
arguments. In particular the
extra argument border
determines
the colour of the window.
Plotting of the points themselves is performed
by the function points
, except for the case of
continuous marks, where it is performed by symbols
.
Their plotting behaviour may be modified through the ...
arguments.
The argument chars
determines the plotting character
or characters used to display the points (in all cases except
for the case of continuous marks). For an unmarked point pattern,
this should be a single integer or character determining a
plotting character (see par("pch")
).
For a multitype point pattern, chars
should be a vector
of integers or characters, of the same length
as levels(x$marks)
, and then the ith level or type
will be plotted using character chars[i]
.
If chars
is absent, but there is an extra argument
pch
, then this will determine the plotting character for
all points.
The argument cols
determines the colour or colours used to
display the points. For an unmarked point pattern, or a
marked point pattern with continuous marks, this should be a character string
determining a colour. For a multitype point pattern, cols
should be a character vector, of the same length
as levels(x$marks)
. The ith level or type will
be plotted using colour cols[i]
.
If cols
is absent, the colour used to plot all the
points may be determined by the extra argument fg
(for multitype point patterns) or the extra argument col
(for all other cases). Note that col
will also reset the
colour of the window.
The arguments maxsize
and markscale
incompatible. They control the physical size of the circles and
squares which represent the marks in a point pattern with continuous
marks. If markscale
is given, then a mark value of m
is plotted as a circle of radius m * markscale
(if m
is positive) or a square of side abs(m) * markscale
(if m
is negative). If maxsize
is given, then the
largest mark in absolute value, mmax=max(abs(x$marks))
,
will be scaled to have physical size maxsize
.
The user can set the default values of these plotting parameters
using spatstat.options("par.points")
.
The value returned by this plot function can be used to make a suitable legend, as shown in the examples.
NULL
, or a vector giving the correspondence between
mark values and plotting characters.
Adrian Baddeley adrian@maths.uwa.edu.au http://www.maths.uwa.edu.au/~adrian/ and Rolf Turner rolf@math.unb.ca http://www.math.unb.ca/~rolf
ppp.object
,
plot
,
par
,
points
,
plot.owin
,
symbols
data(cells) plot(cells) plot(cells, pch=16) # make the plotting symbols larger (for publication at reduced scale) plot(cells, cex=2) # set it in spatstat.options oldopt <- spatstat.options(par.points=list(cex=2)) plot(cells) spatstat.options(oldopt) # multitype data(lansing) plot(lansing) # marked by a real number data(longleaf) plot(longleaf) # just plot the points plot(longleaf, use.marks=FALSE) plot(unmark(longleaf)) # equivalent # controlling COLOURS of points plot(cells, cols="blue") plot(lansing, cols=c("black", "yellow", "green", "blue","red","pink")) plot(longleaf, fg="blue") # make window purple plot(lansing, border="purple") # make everything purple plot(lansing, border="purple", cols="purple", col.main="purple") # controlling PLOT CHARACTERS plot(lansing, chars = 11:16) plot(lansing, chars = c("o","h","m",".","o","o")) # controlling MARK SCALE plot(longleaf, markscale=0.1) # draw circles of DIAMETER equal to nearest neighbour distance plot(cells %mark% nndist(cells), markscale=1/2) # making the legend data(amacrine) v <- plot(amacrine) legend(0.2, 1.2, pch=v, legend=names(v))