Learn R Programming

igraph (version 1.1.1)

layout_: Graph layouts

Description

This is a generic function to apply a layout function to a graph.

Usage

layout_(graph, layout, ...)

# S3 method for igraph_layout_spec print(x, ...)

# S3 method for igraph_layout_modifier print(x, ...)

Arguments

graph

The input graph.

layout

The layout specification. It must be a call to a layout specification function.

...

Further modifiers, see a complete list below. For the print methods, it is ignored.

x

The layout specification

Value

The return value of the layout function, usually a two column matrix. For 3D layouts a three column matrix.

Modifiers

Modifiers modify how a layout calculation is performed. Currently implemented modifyers:

  • component_wise calculates the layout separately for each component of the graph, and then merges them.

  • normalize scales the layout to a square.

Details

There are two ways to calculate graph layouts in igraph. The first way is to call a layout function (they all have prefix layout_ on a graph, to get the vertex coordinates.

The second way (new in igraph 0.8.0), has two steps, and it is more flexible. First you call a layout specification function (the one without the layout_ prefix, and then layout_ (or add_layout_) to perform the layouting.

The second way is preferred, as it is more flexible. It allows operations before and after the layouting. E.g. using the component_wise argument, the layout can be calculated separately for each component, and then merged to get the final results.

See Also

add_layout_ to add the layout to the graph as an attribute.

Other graph layouts: add_layout_, component_wise, layout_as_bipartite, layout_as_star, layout_as_tree, layout_in_circle, layout_nicely, layout_on_grid, layout_on_sphere, layout_randomly, layout_with_dh, layout_with_fr, layout_with_gem, layout_with_graphopt, layout_with_kk, layout_with_lgl, layout_with_mds, layout_with_sugiyama, merge_coords, norm_coords, normalize

Examples

Run this code
# NOT RUN {
g <- make_ring(10) + make_full_graph(5)
coords <- layout_(g, as_star())
plot(g, layout = coords)
# }

Run the code above in your browser using DataLab