Documentation of 'edu.uci.ics.jung.io.PajekNetReader' Java class
PajekNetReader
edu.uci.ics.jung.io

Class PajekNetReader<G extends Graph<V,E>,V,E>



  • public class PajekNetReader<G extends Graph<V,E>,V,E>
    extends java.lang.Object
    Reads a Graph from a Pajek NET formatted source.

    If the edge constraints specify that the graph is strictly undirected, and an "*Arcs" section is encountered, or if the edge constraints specify that the graph is strictly directed, and an "*Edges" section is encountered, an IllegalArgumentException is thrown.

    If the edge constraints do not permit parallel edges, only the first encountered of a set of parallel edges will be read; subsequent edges in that set will be ignored.

    More restrictive edge constraints will cause vertices to be generated that are more time- and space-efficient. At the moment, only supports the part of the specification that defines:

    • vertex ids (each must have a value from 1 to n, where n is the number of vertices)
    • vertex labels (must be in quotes if interrupted by whitespace)
    • directed edge connections (single or list)
    • undirected edge connections (single or list)
    • edge weights (not compatible with edges specified in list form)
      note: this version of PajekNetReader does not support multiple edge weights, as PajekNetFile does; this behavior is consistent with the NET format.
    • vertex locations (x and y; z coordinate is ignored)

    Here is an example format for a directed graph without edge weights and edges specified in list form:

     *vertices [# of vertices] 
     1 "a" 
     2 "b" 
     3 "c" 
     *arcslist 
     1 2 3 
     2 3  
     
    Here is an example format for an undirected graph with edge weights and edges specified in non-list form:
     *vertices [# of vertices] 
     1 "a" 
     2 "b" 
     3 "c" 
     *edges 
     1 2 0.1 
     1 3 0.9 
     2 3 1.0 
     
    See Also:
    "'Pajek - Program for Analysis and Visualization of Large Networks', Vladimir Batagelj and Andrej Mrvar, http://vlado.fmf.uni-lj.si/pub/networks/pajek/doc/pajekman.pdf"
    • Constructor Summary

      Constructors 
      Constructor and Description
      PajekNetReader(com.google.common.base.Supplier<E> edge_factory)
      Creates a PajekNetReader instance with the specified edge Supplier, and whose vertex objects correspond to the integer IDs assigned in the file.
      PajekNetReader(com.google.common.base.Supplier<V> vertex_factory, com.google.common.base.Supplier<E> edge_factory)
      Creates a PajekNetReader instance with the specified vertex and edge factories.
    • Constructor Detail

      • PajekNetReader

        public PajekNetReader(com.google.common.base.Supplier<V> vertex_factory,
                              com.google.common.base.Supplier<E> edge_factory)
        Creates a PajekNetReader instance with the specified vertex and edge factories.
        Parameters:
        vertex_factory - the Supplier to use to create vertex objects
        edge_factory - the Supplier to use to create edge objects
      • PajekNetReader

        public PajekNetReader(com.google.common.base.Supplier<E> edge_factory)
        Creates a PajekNetReader instance with the specified edge Supplier, and whose vertex objects correspond to the integer IDs assigned in the file. Note that this requires V to be assignment-compatible with an Integer value.
        Parameters:
        edge_factory - the Supplier to use to create edge objects
    • Method Detail

      • load

        public G load(java.lang.String filename,
                      com.google.common.base.Supplier<? extends G> graph_factory)
               throws java.io.IOException
        Returns the graph created by parsing the specified file, as created by the specified Supplier.
        Parameters:
        filename - the file from which the graph is to be read
        graph_factory - used to provide a graph instance
        Returns:
        a graph parsed from the specified file
        Throws:
        java.io.IOException - if the graph cannot be loaded
      • load

        public G load(java.io.Reader reader,
                      com.google.common.base.Supplier<? extends G> graph_factory)
               throws java.io.IOException
        Returns the graph created by parsing the specified reader, as created by the specified Supplier.
        Parameters:
        reader - the reader instance from which the graph is to be read
        graph_factory - used to provide a graph instance
        Returns:
        a graph parsed from the specified reader
        Throws:
        java.io.IOException - if the graph cannot be loaded
      • load

        public G load(java.lang.String filename,
                      G g)
               throws java.io.IOException
        Returns the graph created by parsing the specified file, by populating the specified graph.
        Parameters:
        filename - the file from which the graph is to be read
        g - the graph instance to populate
        Returns:
        a graph parsed from the specified file
        Throws:
        java.io.IOException - if the graph cannot be loaded
      • load

        public G load(java.io.Reader reader,
                      G g)
               throws java.io.IOException
        Populates the graph g with the graph represented by the Pajek-format data supplied by reader. Stores edge weights, if any, according to nev (if non-null).

        Any existing vertices/edges of g, if any, are unaffected.

        The edge data are filtered according to g's constraints, if any; thus, if g only accepts directed edges, any undirected edges in the input are ignored.

        Parameters:
        reader - the reader from which the graph is to be read
        g - the graph instance to populate
        Returns:
        a graph parsed from the specified reader
        Throws:
        java.io.IOException - if the graph cannot be loaded
      • getVertexLocationTransformer

        public SettableTransformer<V,java.awt.geom.Point2D> getVertexLocationTransformer()
        Returns:
        the vertexLocationTransformer
      • setVertexLocationTransformer

        public void setVertexLocationTransformer(SettableTransformer<V,java.awt.geom.Point2D> vertex_locations)
        Provides a Function which will be used to write out the vertex locations.
        Parameters:
        vertex_locations - a container for the vertex locations
      • getVertexLabeller

        public SettableTransformer<V,java.lang.String> getVertexLabeller()
        Returns:
        a mapping from vertices to their labels
      • setVertexLabeller

        public void setVertexLabeller(SettableTransformer<V,java.lang.String> vertex_labels)
        Provides a Function which will be used to write out the vertex labels.
        Parameters:
        vertex_labels - a container for the vertex labels
      • getEdgeWeightTransformer

        public SettableTransformer<E,java.lang.Number> getEdgeWeightTransformer()
        Returns:
        a mapping from edges to their weights
      • setEdgeWeightTransformer

        public void setEdgeWeightTransformer(SettableTransformer<E,java.lang.Number> edge_weights)
        Provides a Function which will be used to write out edge weights.
        Parameters:
        edge_weights - a container for the edge weights

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.