Package | Description |
---|---|
edu.ucla.sspace.graph | |
edu.ucla.sspace.graph.io | |
edu.ucla.sspace.graph.isomorphism |
Modifier and Type | Class and Description |
---|---|
class |
SubgraphIterator<E extends Edge,G extends Graph<E>>
An implementation of the EnumerateSubgraphs (ESU) method from Wernicke
(2006), which enumerates all possible k-vertex subgraphs of a given
graph.
|
Modifier and Type | Interface and Description |
---|---|
interface |
DirectedGraph<E extends DirectedEdge>
An interface specification for interacting with directed graph
objects.
|
interface |
DynamicGraph
A stub interface for
Graph instances that encode time on their
vertices and edges. |
interface |
Multigraph<T,E extends TypedEdge<T>>
An interface specification for interacting with MultiGraph objects.
|
interface |
WeightedGraph<E extends WeightedEdge>
An interface specification for interacting with weighted Graph objects.
|
Modifier and Type | Class and Description |
---|---|
class |
AbstractGraph<T extends Edge,S extends EdgeSet<T>>
A base class for many
Graph implementations. |
protected class |
AbstractGraph.Subgraph
A
Graph implementation for representing the view of a subset of a
graph's vertices while tracking changes to the graph on which this Subgraph is a view. |
class |
DirectedMultigraph<T>
A directed multigraph implementation.
|
class |
GenericGraph<T extends Edge>
A graph that imposes no restriction on the types of edges that may connect
its vertices.
|
class |
GraphAdaptor<T extends Edge>
An abstract adaptor class that wraps an existing
Graph . |
class |
LabeledGraph<L,E extends Edge>
A decorator around all graph types that allows vertices to take on arbitrary
labels.
|
class |
SparseDirectedGraph
An implementation of
DirectedGraph that uses a sparse backing
representation. |
class |
SparseUndirectedGraph
An undirected implementation of
Graph that uses a sparse backing
representation. |
class |
SparseWeightedGraph
An implementation of
DirectedGraph that uses a sparse backing
representation. |
class |
UndirectedMultigraph<T>
A directed multigraph implementation.
|
class |
WeightedDirectedMultigraph<T>
|
Modifier and Type | Method and Description |
---|---|
static <E extends Edge,G extends Graph<E>> |
Graphs.toLineGraph(G graph)
Converts the provided graph into a line graph, where each
edge is mapped to a vertex and edges that share vertices are connected by
an edge in the line graph.
|
static <E extends Edge,G extends Graph<E>> |
Graphs.toLineGraph(G graph,
Indexer<E> edgeIndices)
Converts the provided graph into a line graph, where each
edge is mapped to a vertex and edges that share vertices are connected by
an edge in the line graph, using
edgeIndices to specify the
mapping between edges in the input graph and their corresponding vertices
in the line graph. |
Modifier and Type | Method and Description |
---|---|
Graph<Edge> |
SparseUndirectedGraph.copy(Set<Integer> vertices)
Creates a copy of this graph containing only the specified number of
vertices and all edges between those vertices.
|
abstract Graph<T> |
AbstractGraph.copy(Set<Integer> vertices)
Creates a copy of this graph containing only the specified number of
vertices and all edges between those vertices.
|
Graph<T> |
AbstractGraph.Subgraph.copy(Set<Integer> vertices) |
Graph<E> |
Graph.copy(Set<Integer> vertices)
Creates a copy of this graph containing only the specified number of
vertices and all edges between those vertices.
|
Graph<T> |
GraphAdaptor.copy(Set<Integer> vertices)
Creates a copy of this graph containing only the specified number of
vertices and all edges between those vertices.
|
Graph<T> |
GenericGraph.copy(Set<Integer> vertices)
Creates a copy of this graph containing only the specified number of
vertices and all edges between those vertices.
|
Graph<T> |
SamplingSubgraphIterator.next()
Returns the next subgraph from the backing graph.
|
static <E extends Edge> |
Graphs.pack(Graph<E> g)
Creates a copy of the provided graph where all vertices are remapped to a
contiguous range from 0 to
g.order() -1. |
static Graph<? extends Edge> |
GraphIO.read(File f,
GraphIO.GraphType type) |
static Graph<Edge> |
GraphIO.readUndirected(File f) |
static Graph<Edge> |
GraphIO.readUndirected(File f,
Indexer<String> vertexIndexer) |
static Graph<Edge> |
GraphIO.readUndirectedFromWeighted(File f,
Indexer<String> vertexIndexer,
double minWeight)
Reads in an undirected network from a file containing weighted edges,
only keeping those undirected edges whose weight was above the specified
threshold
|
Graph |
DynamicGraph.subgraph(IntSet vertices)
Returns a view of this graph containing only the specified vertices.
|
Graph |
DynamicGraph.subgraph(IntSet vertices,
Calendar atTime) |
Graph |
DynamicGraph.subgraph(IntSet vertices,
Calendar startTime,
Calendar endTime) |
Graph |
DynamicGraph.subgraph(IntSet vertices,
Date atTime) |
Graph |
DynamicGraph.subgraph(IntSet vertices,
Date startTime,
Date endTime) |
Graph |
DynamicGraph.subgraph(IntSet vertices,
long atTime) |
Graph |
DynamicGraph.subgraph(IntSet vertices,
long startTime,
long endTime) |
Graph<T> |
AbstractGraph.subgraph(Set<Integer> vertices)
Returns a view of this graph containing only the specified vertices where
the returned graph's vertinces are renamed (0, ..., n).
|
Graph<T> |
AbstractGraph.Subgraph.subgraph(Set<Integer> vertices)
Returns a view of this graph containing only the specified vertices where
the returned graph's vertinces are renamed (0, ..., n).
|
Graph<E> |
Graph.subgraph(Set<Integer> vertices)
Returns a view of this graph containing only the specified vertices where
the returned graph's vertinces are renamed (0, ..., n).
|
Graph<T> |
GraphAdaptor.subgraph(Set<Integer> vertices)
Returns a view of this graph containing only the specified vertices where
the returned graph's vertinces are renamed (0, ..., n).
|
static <T extends Edge> |
Graphs.synchronizedGraph(Graph<T> g)
To-do
|
static <E extends Edge,G extends Graph<E>> |
Graphs.toLineGraph(G graph)
Converts the provided graph into a line graph, where each
edge is mapped to a vertex and edges that share vertices are connected by
an edge in the line graph.
|
static <E extends Edge,G extends Graph<E>> |
Graphs.toLineGraph(G graph,
Indexer<E> edgeIndices)
Converts the provided graph into a line graph, where each
edge is mapped to a vertex and edges that share vertices are connected by
an edge in the line graph, using
edgeIndices to specify the
mapping between edges in the input graph and their corresponding vertices
in the line graph. |
static <T extends Edge> |
Graphs.unmodifiable(Graph<T> g)
To-do
|
Modifier and Type | Method and Description |
---|---|
<E extends Edge> |
Fanmod.findMotifs(Graph<E> g,
int motifSize,
int numRandomGraphs,
Fanmod.MotifFilter filter)
Finds motifs in the input graph according to the specified parameters.
|
Modifier and Type | Method and Description |
---|---|
static <E extends DirectedEdge> |
Graphs.asDirectedGraph(Graph<E> g) |
static <T,E extends TypedEdge<T>> |
Graphs.asMultigraph(Graph<E> g) |
static <E extends WeightedEdge> |
Graphs.asWeightedGraph(Graph<E> g) |
<E extends Edge> |
ChineseWhispersClustering.cluster(Graph<E> graph) |
<E extends Edge> |
ChineseWhispersClustering.cluster(Graph<E> graph,
int maxIterations) |
<E extends Edge> |
ChineseWhispersClustering.cluster(Graph<E> graph,
int maxIterations,
double randomAssignmentProb) |
<E extends Edge> |
LinkClustering.cluster(Graph<E> graph,
int numClusters,
Properties props)
Computes the similarity of the graph's edges and merges them until the
specified number of clusters has been reached.
|
<E extends Edge> |
LinkClustering.cluster(Graph<E> graph,
Properties props)
Computes the similarity of the graph's edges and merges them to select
the final partitioning that maximizes the overall cluster density.
|
<E extends Edge> |
BetweennessCentrality.compute(Graph<E> g)
Returns a mapping from each vertex to its betweenness centrality measure.
|
<E extends Edge> |
Fanmod.findMotifs(Graph<E> g,
int motifSize,
int numRandomGraphs,
Fanmod.MotifFilter filter)
Finds motifs in the input graph according to the specified parameters.
|
protected <E extends Edge> |
WeightedLinkClustering.getConnectionSimilarity(Graph<E> graph,
int keystone,
int impost1,
int impost2) |
protected <E extends Edge> |
LinkClustering.getConnectionSimilarity(Graph<E> graph,
int keystone,
int impost1,
int impost2)
Computes the similarity of the two edges as the Jaccard index of the
neighbors of two impost nodes.
|
static <E extends Edge> |
Graphs.pack(Graph<E> g)
Creates a copy of the provided graph where all vertices are remapped to a
contiguous range from 0 to
g.order() -1. |
static <E extends Edge> |
Graphs.shufflePreserve(Graph<E> g,
int shufflesPerEdge)
Shuffles the edges of
g while still preserving the degree
sequence of the graph. |
static <E extends Edge> |
Graphs.shufflePreserve(Graph<E> g,
int shufflesPerEdge,
Random rnd)
Shuffles the edges of
g while still preserving the degree
sequence of the graph. |
static <T extends Edge> |
Graphs.synchronizedGraph(Graph<T> g)
To-do
|
static String |
Graphs.toAdjacencyMatrixString(Graph<?> g)
Returns a pretty-print string version of the graph as an adjacency matrix
where a 1 indicates an edge and a 0 indicates no edge.
|
static <T extends Edge> |
Graphs.unmodifiable(Graph<T> g)
To-do
|
static void |
GraphIO.writeUndirected(File f,
Graph<? extends Edge> g,
Indexer<String> vertexLabels) |
Constructor and Description |
---|
DirectedMultigraph(Graph<? extends DirectedTypedEdge<T>> g)
Creates a directed multigraph with a copy of all the vertices and edges
in
g . |
GenericGraph(Graph<? extends T> g)
Creates a new
GenericGraph with a copy of all the edges and
vertices contained within g |
GraphAdaptor(Graph<T> g) |
LabeledGraph(Graph<E> graph) |
LabeledGraph(Graph<E> graph,
Indexer<L> vertexLabels) |
SamplingSubgraphIterator(Graph<T> g,
int subgraphSize,
double[] traversalProbabilitiesAtDepth)
Constructs an iterator over all the subgraphs of
g with the
specified subgraph size, where the list of probabilities is used to
decide probabilistically whether the next level of expansion should be
taken. |
SparseDirectedGraph(Graph<? extends DirectedEdge> g)
Creates a directed graph with a copy of all the vertices and edges in
g . |
SparseUndirectedGraph(Graph<? extends Edge> g)
Creates an undirected graph with a copy of all the vertices and edges in
g . |
SparseWeightedGraph(Graph<? extends WeightedEdge> g)
Creates a directed graph with a copy of all the vertices and edges in
g . |
UndirectedMultigraph(Graph<? extends TypedEdge<T>> g)
Creates a directed multigraph with a copy of all the vertices and edges
in
g . |
WeightedDirectedMultigraph(Graph<? extends WeightedDirectedTypedEdge<T>> g)
Creates a directed multigraph with a copy of all the vertices and edges
in
g . |
Modifier and Type | Method and Description |
---|---|
Graph |
DotIO.readGraph(File dotFile) |
static Graph<DirectedEdge> |
PajekIO.readPajek(File f) |
Graph<Edge> |
GraphReaderAdapter.readUndirected(File f)
Reads in the graph from the provided file
|
Graph<Edge> |
GraphReader.readUndirected(File f)
Reads in the graph from the provided file
|
Graph<Edge> |
EdgeListReader.readUndirected(File f) |
Graph<Edge> |
GraphReaderAdapter.readUndirected(File f,
Indexer<String> vertexLabels)
Reads in the graph from the provided file, using the specified
Indexer to decide how vertex labels in the file are mapped to numeric
vertices. |
Graph<Edge> |
GraphReader.readUndirected(File f,
Indexer<String> vertexLabels)
Reads in the graph from the provided file, using the specified
Indexer to decide how vertex labels in the file are mapped to numeric
vertices. |
Graph<Edge> |
EdgeListReader.readUndirected(File f,
Indexer<String> vertexIndexer) |
Graph<Edge> |
GraphReaderAdapter.readUndirectedFromWeighted(File f,
Indexer<String> vertexLabels,
double minWeight)
Reads in an undirected network from a file containing weighted edges,
only keeping those undirected edges whose weight was above the specified
threshold
|
Graph<Edge> |
GraphReader.readUndirectedFromWeighted(File f,
Indexer<String> vertexLabels,
double minWeight)
Reads in an undirected network from a file containing weighted edges,
only keeping those undirected edges whose weight was above the specified
threshold
|
Graph<Edge> |
EdgeListReader.readUndirectedFromWeighted(File f,
Indexer<String> vertexIndexer,
double minWeight)
Reads in an undirected network from a file containing weighted edges,
only keeping those undirected edges whose weight was above the specified
threshold
|
Modifier and Type | Method and Description |
---|---|
void |
DotWriter.write(Graph<? extends Edge> g,
File f) |
<E extends Edge> |
PajekIO.writeUndirectedGraph(Graph<E> g,
File f) |
<E extends Edge> |
DotIO.writeUndirectedGraph(Graph<E> g,
File f) |
<E extends Edge> |
DotIO.writeUndirectedGraph(Graph<E> g,
File f,
Indexer<String> vertexLabels) |
Modifier and Type | Class and Description |
---|---|
class |
IsomorphicGraphCounter<G extends Graph<? extends Edge>>
A special-purpose
Counter that counts graphs based on isomorphism, rather
than object equivalence (which may take into account vertex labeling, etc.). |
class |
IsomorphicSet<G extends Graph<? extends Edge>>
A
Set of Graph instances that maintains the invariant that
all graphs in the set are non-isomorphisms of each other. |
Modifier and Type | Method and Description |
---|---|
Graph<? extends Edge> |
VF2State.getGraph1()
Returns the first graph being matched
|
Graph<? extends Edge> |
State.getGraph1()
Returns the first graph being matched
|
Graph<? extends Edge> |
TypedVF2State.getGraph1()
Returns the first graph being matched
|
Graph<? extends Edge> |
VF2State.getGraph2()
Returns the first graph being matched
|
Graph<? extends Edge> |
State.getGraph2()
Returns the first graph being matched
|
Graph<? extends Edge> |
TypedVF2State.getGraph2()
Returns the first graph being matched
|
Modifier and Type | Method and Description |
---|---|
boolean |
IsomorphismTester.areIsomorphic(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns
true if the graphs are isomorphism of each other. |
boolean |
IsomorphismTester.areIsomorphic(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns
true if the graphs are isomorphism of each other. |
boolean |
AbstractIsomorphismTester.areIsomorphic(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns
true if the graphs are isomorphism of each other. |
boolean |
AbstractIsomorphismTester.areIsomorphic(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns
true if the graphs are isomorphism of each other. |
Map<Integer,Integer> |
IsomorphismTester.findIsomorphism(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns an isomorphic mapping from the vertices in
g1 to the
vertices in g2 , or an empty Map if no such mapping
exists. |
Map<Integer,Integer> |
IsomorphismTester.findIsomorphism(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns an isomorphic mapping from the vertices in
g1 to the
vertices in g2 , or an empty Map if no such mapping
exists. |
Map<Integer,Integer> |
AbstractIsomorphismTester.findIsomorphism(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns an isomorphic mapping from the vertices in
g1 to the
vertices in g2 , or an empty Map if no such mapping
exists. |
Map<Integer,Integer> |
AbstractIsomorphismTester.findIsomorphism(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns an isomorphic mapping from the vertices in
g1 to the
vertices in g2 , or an empty Map if no such mapping
exists. |
protected State |
VF2IsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns a new
State for running the VF2 algorithm. |
protected State |
VF2IsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns a new
State for running the VF2 algorithm. |
protected abstract State |
AbstractIsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
|
protected abstract State |
AbstractIsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
|
protected State |
TypedVF2IsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns a new
State for running the VF2 algorithm. |
protected State |
TypedVF2IsomorphismTester.makeInitialState(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Returns a new
State for running the VF2 algorithm. |
Constructor and Description |
---|
TypedVF2State(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Creates a new
TypedVF2State with an empty mapping between the two
graphs. |
TypedVF2State(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Creates a new
TypedVF2State with an empty mapping between the two
graphs. |
VF2State(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Creates a new
VF2State with an empty mapping between the two
graphs. |
VF2State(Graph<? extends Edge> g1,
Graph<? extends Edge> g2)
Creates a new
VF2State with an empty mapping between the two
graphs. |
Copyright © 2012. All Rights Reserved.