igraph (version 0.5.5-4)

plot.bgraph: Plot graphs and their cohesive block hierarchy

Description

This function plots bgraph objects as output by cohesive.blocks. It produces a two-panel plot with the graph itself on the left and a tree representing the block hierarchy on the right.

Usage

## S3 method for class 'bgraph':
plot(x, mc = NULL, vertex.size = 3, colpal = NULL, emph = NULL, ...)

Arguments

x
The bgraph object to be plotted
mc
A numeric vector listing the vertex connectivity of the maximally cohesive subgraph of each vertex. Automatically calculated if NULL (leaving default is usually preferable).
vertex.size
The size of the vertices in the plot. Applies only to the graph, and not to the block-hierarchy tree.
colpal
The color palette to use to distinguish block cohesion. Defaults to rainbow spectrum.
emph
A numeric vector of blocks to emphasize. Useful for distinguishing specific blocks when it is unclear which higher-cohesion vertices belong to which block. (see details)
...
Other arguments to be passed on to plot.igraph for the calculation of the graph (but not the hierarchy).

Details

Two plots are used to represent the cohesive blocks in a graph visually. The first is a standard plot with vertices colored according to their maximally-cohesive containing block. The second is a tree representing the hierarchical structure of the blocks, with edges representing a strict superset relationship.

The emph argument should be a numeric vector corresponding to the indices of blocks in x$blocks and x$block.cohesion (1-based indexing). The vertices of the specified blocks are emphasized by enlarging them and using a white border.

The intended usage of this function is the quick plotting of a graph together with its block structure. If you need more flexibility then please plot the graph and the hierarchy (the tree graph attribute) separately by using plot.igraph.

See Also

cohesive.blocks for the cohesive blocks computation, graph.cohesion, plot.igraph and igraph.plotting for regular igraph plotting, write.pajek.bgraph.

Examples

Run this code
## Create a graph with an interesting structure:
g <- graph.disjoint.union(graph.full(4),graph.empty(2,directed=FALSE))
g <- add.edges(g,c(3,4,4,5,4,2))
g <- graph.disjoint.union(g,g,g)
g <- add.edges(g,c(0,6,1,7,0,12,4,0,4,1))

## Find cohesive blocks:
gBlocks <- cohesive.blocks(g)

## Plot:
plot.bgraph(gBlocks,layout=layout.kamada.kawai)

## There are two two-cohesive blocks. To differentiate the block 
## that contains both the three- and four-cohesive sub-blocks use:
plot(gBlocks,emph=3,layout=layout.kamada.kawai)

Run the code above in your browser using DataCamp Workspace