```
Jcross(X, i=1, j=2)
Jcross(X, i=1, j=2, eps, r)
Jcross(X, i=1, j=2, eps, breaks)
```

X

The observed point pattern,
from which an estimate of the multitype $J$ function
$J_{ij}(r)$ will be computed.
It must be a multitype point pattern (a marked point pattern
whose marks are a factor). See under Details.

i

Number or character string identifying the type (mark value)
of the points in **from** which distances are measured.

`X`

j

Number or character string identifying the type (mark value)
of the points in **to** which distances are measured.

`X`

eps

A positive number.
The resolution of the discrete approximation to Euclidean
distance (see below). There is a sensible default.

r

numeric vector. The values of the argument $r$
at which the function
$J_{ij}(r)$ should be evaluated.
There is a sensible default.
First-time users are strongly advised not to specify this argument.
See below for important conditions o

breaks

An alternative to the argument **Details** section.

`r`

.
Not normally invoked by the user. See the - A data frame containing six numeric columns
J the recommended estimator of $J_{ij}(r)$, currently the Kaplan-Meier estimator. r the values of the argument $r$ at which the function $J_{ij}(r)$ has been estimated km the Kaplan-Meier estimator of $J_{ij}(r)$ rs the ``reduced sample'' or ``border correction'' estimator of $J_{ij}(r)$ un the ``uncorrected'' estimator of $J_{ij}(r)$ formed by taking the ratio of uncorrected empirical estimators of $1 - G_{ij}(r)$ and $1 - F_{j}(r)$, see `Gdot`

and`Fest`

.theo the theoretical value of $J_{ij}(r)$ for a marked Poisson process, namely 1. - The result also has two attributes
`"G"`

and`"F"`

which are respectively the outputs of`Gcross`

and`Fest`

for the point pattern.

`i`

is interpreted as
a level of the factor `X$marks`

. Beware of the usual
trap with factors: numerical values are not
interpreted in the same way as character values. See the first example.`Jcross`

and its companions
`Jdot`

and `Jmulti`

are generalisations of the function `Jest`

to multitype point patterns. A multitype point pattern is a spatial pattern of
points classified into a finite number of possible
``colours'' or ``types''. In the `spatstat`

package,
a multitype pattern is represented as a single
point pattern object in which the points carry marks,
and the mark value attached to each point
determines the type of that point.
The argument `X`

must be a point pattern (object of class
`"ppp"`

) or any data that are acceptable to `as.ppp`

.
It must be a marked point pattern, and the mark vector
`X$marks`

must be a factor.
The argument `i`

will be interpreted as a
level of the factor `X$marks`

. (Warning: this means that
an integer value `i=3`

will be interpreted as the 3rd smallest level,
not the number 3).
The ``type $i$ to type $j$'' multitype $J$ function
of a stationary multitype point process $X$
was introduced by Van lieshout and Baddeley (1999). It is defined by
$$J_{ij}(r) = \frac{1 - G_{ij}(r)}{1 -
F_{j}(r)}$$
where $G_{ij}(r)$ is the distribution function of
the distance from a type $i$ point to the nearest point of type $j$,
and $F_{j}(r)$ is the distribution
function of the distance from a fixed point in space to the nearest
point of type $j$ in the pattern.

An estimate of $J_{ij}(r)$ is a useful summary statistic in exploratory data analysis of a multitype point pattern. If the subprocess of type $i$ points is independent of the subprocess of points of type $j$, then $J_{ij}(r) \equiv 1$. Hence deviations of the empirical estimate of $J_{ij}$ from the value 1 may suggest dependence between types.

This algorithm estimates $J_{ij}(r)$
from the point pattern `X`

. It assumes that `X`

can be treated
as a realisation of a stationary (spatially homogeneous)
random spatial point process in the plane, observed through
a bounded window.
The window (which is specified in `X`

as `X$window`

)
may have arbitrary shape.
Biases due to edge effects are
treated in the same manner as in `Jest`

,
using the Kaplan-Meier and border corrections.
The main work is done by `Gmulti`

and `Fest`

.

The argument `r`

is the vector of values for the
distance $r$ at which $J_{ij}(r)$ should be evaluated.
The values of $r$ must be increasing nonnegative numbers
and the maximum $r$ value must exceed the radius of the
largest disc contained in the window.

Van Lieshout, M.N.M. and Baddeley, A.J. (1999)
Indices of dependence between types in multivariate point patterns.
*Scandinavian Journal of Statistics* **26**, 511--532.

`Jdot`

,
`Jest`

,
`Jmulti`

library(spatstat) # Lansing woods data: 6 types of trees data(lansing) Jhm <- Jcross(lansing, "hickory", "maple") <testonly>sub <- lansing[seq(1,lansing$n, by=30), ] Jhm <- Jcross(sub, "hickory", "maple")</testonly> # diagnostic plot for independence between hickories and maples plot(Jhm$r, Jhm$J, xlab="r", ylab="Jhm(r)", type="l") abline(h=1, lty=2) # synthetic example with two marks "a" and "b" pp <- runifpoispp(50) pp$marks <- sample(c("a","b"), pp$n, replace=TRUE) J <- Jcross(pp, "a", "b")