difference.igraph {igraph} | R Documentation

## Difference of graphs

### Description

The difference of two graphs are created.

### Usage

    ## S3 method for class 'igraph'
    difference(big, small, byname = "auto", ...)

### Arguments

`big` | The left hand side argument of the minus operator. A directed or undirected graph.
`small` | The right hand side argument of the minus operator. A directed ot undirected graph.
`byname` | A logical scalar, or the character scalar `auto`. Whether to perform the operation based on symbolic vertex names. If it is `auto`, that means `TRUE` if both graphs are named and `FALSE` otherwise. A warning is generated if `auto` and one graph, but not both graphs are named.
`...` | Ignored, included for S3 compatibility.

### Details

`difference` creates the difference of two graphs. Only edges present in the first graph but not in the second will be be included in the new graph. The corresponding operator is %m%.

If the `byname` argument is `TRUE` (or `auto` and the graphs are all named), then the operation is performed based on symbolic vertex names. Otherwise numeric vertex ids are used.

`difference` keeps all attributes (graph, vertex and edge) of the first graph.

Note that `big` and `small` must both be directed or both be undirected, otherwise an error message is given.

### Value

A new graph object.

### Author(s)

Gabor Csardi csardi.gabor@gmail.com

### Examples

    ## Create a wheel graph
    wheel <- union(make_ring(10),
                         make_star(11, center=11, mode="undirected"))
    V(wheel)$name <- letters[seq_len(vcount(wheel))]

    ## Subtract a star graph from it
    sstar <- make_star(6, center=6, mode="undirected")
    V(sstar)$name <- letters[c(1,3,5,7,9,11)]
    G <- wheel %m% sstar
    print_all(G)
    plot(G, layout=layout_nicely(wheel))

[Package igraph version 1.1.2 Index]