Plot graphs and their cohesive block hierarchy

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.

## S3 method for class 'bgraph':
plot(x, mc = NULL, vertex.size = 3, colpal = NULL, emph = NULL, ...)
The bgraph object to be plotted
A numeric vector listing the vertex connectivity of the maximally cohesive subgraph of each vertex. Automatically calculated if NULL (leaving default is usually preferable).
The size of the vertices in the plot. Applies only to the graph, and not to the block-hierarchy tree.
The color palette to use to distinguish block cohesion. Defaults to rainbow spectrum.
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).

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.

  • plot.bgraph
## 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:

## There are two two-cohesive blocks. To differentiate the block 
## that contains both the three- and four-cohesive sub-blocks use:
Documentation reproduced from package igraph, version 0.5.5-3, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.