Learn R Programming

ndtv (version 0.13.4)

layout.distance: Provides a default way to convert a network into a set of euclidian distances suitable for MDS-style layout optimization.

Description

Computes a geodesic path distance matrix for a network after symmetrizing, replacing Inf values with default.dist

Usage

layout.distance(net, default.dist = NULL,  weight.attr = NULL,
                 weight.dist = FALSE)

Value

A distance matrix assumed to be appropriate for the network.

Arguments

net

The network that the distance matrix should be computed for

default.dist

An (optional) value to be used to replace undefined values created by isolates and disconnected components.

weight.attr

character, (optional) the name of an edge attribute of net containing numeric values to use for edge distances.

weight.dist

logical, should the edge values given by weight.attr be interpreted as distances (larger values should place vertices farther apart) ? Default (FALSE) assumes values are similarities (larger values means stronger connection means vertices closer together ).

Author

Skye Bender-deMoll

Details

If no default.dist is provided the value sqrt(network.size(net)) will be used. If input is similarity, it will be recoded/reversed to distances by subtracting each non-zero value from the max value of the matrix and adding the min value of the matrix. If the network is directed, the matrix will then be symmatrized to either the max value of i-j relation (if weight.dist=FALSE) or min value of i-j relation (if weight.dist=TRUE). Note that if the network is marked as undirected but includes bi-directional edges, the (i,j) value will be chosen instead of (j,i).

Examples

Run this code
test<-network.initialize(4)
add.edges(test,tail=1:2,head=2:3)
# in adjacency matrix form
as.matrix(test)
# as matrix of geodesic distances
layout.distance(test,1.5)

Run the code above in your browser using DataLab