# plot.bgraph

##### 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.

- Keywords
- graphs

##### Usage

`plot.bgraph(x, mc = NULL, vertex.size = 5, 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

```
## 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)
```

*Documentation reproduced from package igraph, version 0.5.1, License: GPL (>= 2)*