# treebranchlabels

From spatstat v1.42-2
by Adrian Baddeley

##### Label Vertices of a Tree by Branch Membership

Given a linear network which is a tree (acyclic graph), this function assigns a label to each vertex, indicating its position in the tree.

##### Usage

`treebranchlabels(L, root = 1)`

##### Arguments

- L
- Linear network (object of class
`"linnet"`

). The network must have no loops. - root
- Root of the tree. An integer index identifying
which point in
`vertices(L)`

is the root of the tree.

##### Details

The network `L`

should be a tree, that is, it must have no loops.

This function computes a character string label for each vertex
of the network `L`

. The vertex identified by `root`

(that is, `vertices(L)[root]`

) is taken as the root of the tree
and is given the empty label `""`

.

- If there are several line
segments which meet at the root vertex, each of these segments is the
start of a new branch of the tree; the other endpoints of these
segments are assigned the labels
`"a"`

,`"b"`

,`"c"`

and so on. - If only one segment issues from the root vertex,
the other endpoint of this segment is assigned the empty label
`""`

.

`"a"`

is joined to two other unlabelled
vertices, these will be labelled `"aa"`

and `"ab"`

.
The rule is applied recursively until all vertices have been labelled. If `L`

is not a tree, the algorithm will terminate, but the
results will be nonsense.

##### Value

- A vector of character strings, with one entry for each point in
`vertices(L)`

.

##### See Also

##### Examples

```
# make a simple tree
m <- simplenet$m
m[8,10] <- m[10,8] <- FALSE
L <- linnet(vertices(simplenet), m)
plot(L, main="")
# compute branch labels
tb <- treebranchlabels(L, 1)
tbc <- paste0("[", tb, "]")
text(vertices(L), labels=tbc, cex=2)
```

*Documentation reproduced from package spatstat, version 1.42-2, License: GPL (>= 2)*

### Community examples

Looks like there are no examples yet.