These functions are under development. Please email the author before
  using them for published work.
The function gengraph generates graphs based on genetic
  distances, so that pairs of entities (individuals or populations) are
  connected if and only if they are distant by less than a given
  threshold distance. Graph algorithms and classes from the
  igraph package are used.
gengraph is a generic function with methods for the
 following types of objects:
 - matrix (only numeric data)
 - dist 
 - genind objects (genetic markers, individuals)
 - genpop objects (genetic markers, populations)
 -  DNAbin objects (DNA sequences)
gengraph(x, ...)# S3 method for matrix
gengraph(x, cutoff=NULL, ngrp=NULL, computeAll=FALSE,
           plot=TRUE, show.graph=TRUE, col.pal=funky, truenames=TRUE,
           nbreaks=10, ...)
# S3 method for dist
gengraph(x, cutoff=NULL, ngrp=NULL, computeAll=FALSE,
           plot=TRUE, show.graph=TRUE, col.pal=funky, truenames=TRUE,
           nbreaks=10, ...)
# S3 method for genind
gengraph(x, cutoff=NULL, ngrp=NULL, computeAll=FALSE,
           plot=TRUE, show.graph=TRUE, col.pal=funky, truenames=TRUE,
           nbreaks=10, ...)
# S3 method for genpop
gengraph(x, cutoff=NULL, ngrp=NULL, computeAll=FALSE,
           plot=TRUE, show.graph=TRUE, col.pal=funky, method=1,
           truenames=TRUE, nbreaks=10, ...)
# S3 method for DNAbin
gengraph(x, cutoff=NULL, ngrp=NULL, computeAll=FALSE,
           plot=TRUE, show.graph=TRUE, col.pal=funky, truenames=TRUE,
           nbreaks=10, ...)
The class gengraph is a list with the following
  components:
a graph of class igraph.
a list containing group information: $membership:
    an integer giving group membership; $csize: the size of each
    cluster; $no: the number of clusters
the value used as a cutoff point
the color used to plot each group.
a matrix, dist, genind,
    genpop, or DNAbin object. For
    matrix and dist, the object represents pairwise
    (by default, Hamming) distances between considered individuals.
a numeric value indicating the cutoff point,
    i.e. the distance at which two entities are no longer connected in
    the garph produced by the method.
an integer indicating the number of groups to be
    looked for. A message is issued if this exact number could not be found.
a logical stating whether to investigate
    solutions for every (integer) cutoff point; defaults to FALSE.
a logical indicating whether plots should be drawn;
    defaults to TRUE; this operation can take time for large, highly-connected graphs.
a logical indicating whether the found graph
    should be drawn, only used in the interactive mode; this operation
    can take time for large, highly-connected graphs; defaults to FALSE.
a color palette used to define group colors.
an integer ranging from 1 to 6 indicating the
    type of method to be used to derive a matrix of pairwise distances
    between populations; values from 1 to 5 are passed to the function
    dist.genpop; other values are not supported.
a logical indicating whether original labels should be used for plotting (TRUE), as opposed to indices of sequences (FALSE).
an integer indicating the number of breaks used by the heuristic when seeking an exact number of groups.
further arguments to be used by other functions; currently not used.
Original idea by Anne Cori and Christophe Fraser. Implementation by Thibaut Jombart t.jombart@imperial.ac.uk.
The igraph package.
if(require(ape)){
    data(woodmouse)
    g <- gengraph(woodmouse, cutoff=5)
    g
    plot(g$graph)
}
Run the code above in your browser using DataLab