# Centralize a graph according to the eigenvector centrality of vertices

Source:`R/centralization.R`

`centr_eigen.Rd`

See `centralize()`

for a summary of graph centralization.

## Usage

```
centr_eigen(
graph,
directed = FALSE,
scale = TRUE,
options = arpack_defaults(),
normalized = TRUE
)
```

## Arguments

- graph
The input graph.

- directed
logical scalar, whether to use directed shortest paths for calculating eigenvector centrality.

- scale
Whether to rescale the eigenvector centrality scores, such that the maximum score is one.

- options
This is passed to

`eigen_centrality()`

, the options for the ARPACK eigensolver.- normalized
Logical scalar. Whether to normalize the graph level centrality score by dividing by the theoretical maximum.

## Value

A named list with the following components:

- vector
The node-level centrality scores.

- value
The corresponding eigenvalue.

- options
ARPACK options, see the return value of

`eigen_centrality()`

for details.- centralization
The graph level centrality index.

- theoretical_max
The same as above, the theoretical maximum centralization score for a graph with the same number of vertices.

## See also

Other centralization related:
`centr_betw()`

,
`centr_betw_tmax()`

,
`centr_clo()`

,
`centr_clo_tmax()`

,
`centr_degree()`

,
`centr_degree_tmax()`

,
`centr_eigen_tmax()`

,
`centralize()`

## Examples

```
# A BA graph is quite centralized
g <- sample_pa(1000, m = 4)
centr_degree(g)$centralization
#> [1] 0.1523145
centr_clo(g, mode = "all")$centralization
#> [1] 0.4128655
centr_betw(g, directed = FALSE)$centralization
#> [1] 0.2245963
centr_eigen(g, directed = FALSE)$centralization
#> [1] 0.9418167
# The most centralized graph according to eigenvector centrality
g0 <- make_graph(c(2, 1), n = 10, dir = FALSE)
g1 <- make_star(10, mode = "undirected")
centr_eigen(g0)$centralization
#> [1] 1
centr_eigen(g1)$centralization
#> [1] 0.75
```