The border is a polygon used to limit the processed area. Only data points within the border are processed.
$border <- NULLzoning
An object of class SpatialPolygons can be used as border:
data(conductivity_border) $border <- conductivity_borderzoning
Show the Voronoi diagram
$perform_voronoi() zoning<- zoning$voronoi_map() vm par(mar = c(0, 0, 0, 0)) plot(vm) plot(zoning$zonable_data(), add = TRUE)
The neighborhood relation can be filtered by a minimal common edge length.
NULL all contiguous Voronoi polygons are considered as neighbors:
$neighborhood <- NULLzoning
The user can define the minimum edge length (in the same unit as the input dataset coordinate system) shared by two Voronoi polygons for being considered as neighbors:
$neighborhood <- 5zoning
Show the neighborhood relations
The red lines shows the pairs of Voronoi polygons that are no longer considered as neighbors.
$perform_neighborhood() zoning<- zoning$neighborhood_map() nm par(mar = c(0, 0, 0, 0)) plot(vm) plot(subset(nm, filtered == FALSE), add = TRUE, col = "green") plot(subset(nm, filtered == TRUE), add = TRUE, col = "red")
This distance function is used for a given attribute. It computes the distance between two data points in the monodimensional attribute space. As many distance functions as there are attributes in the zonable dataset are needed (in a list if multiple attributes).
Two univariate distances are available:
EuclideanDistance (the default) or
NULL if the attribute should not be used in the zoning process.
The fuzzy distance function is based on a fuzzy partition that allows for integrating expert knowledge into distance calculations (Guillaume, Charnomordic, and Loisel 2013; Guillaume and Charnomordic 2013). The partition must be a standardized fuzzy partition based on a
FisIn object of the FisPro R package.
The following command-line sets the fuzzy distance based on 3 Mfs-partition defined by the following breakpoints: 20, 30, 100. The range of the
conduct attribute is [12, 116]:
$attribute_distance <- FuzzyDistance(NewFisIn(c(20, 30, 100), 12, 116))zoning
The default value, used in this example, is the euclidean distance:
$attribute_distance <- EuclideanDistance()zoning
Zone distance aggregation
To compute the distance between two zones, all the data points included in the two zones are considered and the aggregation is done using the aggreg parameter:
\[ d(z_i,z_j) = (Aggreg) d(x,y), \forall x \in z_i, y \in z_j\] Three aggreg operators are available:
MaximumDistance (the default) or
The two zones to be merged at a given iteration are the ones for which the zone distance is minimum.
$zone_distance <- MaximumDistance()zoning
The combination function distance is needed when the zoning is done according to several attributes. In this case, each univariate or elementary distance is computed and normalized in a unit interval. These partial distances are then aggregated to yield the distance between two data points in the multidimensional attribute space. The distance combination is done before computing the between-zones distance.
Two combinations are proposed:
EuclideanDistance (the default) or
$combine_distance <- EuclideanDistance()zoning
This criterion is used to determine the smallest size for a zone (number of points or area) to be kept in the final map. The zones with a size less than the threshold are included in the most compatible neighboring zone.
The two available parameters are:
The default value is
ZoneSize with 1 point.
$smallest_zone <- ZoneSize(1)zoning