java.lang.Object
org.jgrapht.nio.BaseExporter<V,E>
org.jgrapht.nio.gexf.GEXFExporter<V,E>
- Type Parameters:
V- the graph vertex typeE- the graph edge type
- All Implemented Interfaces:
GraphExporter<V,E>
public class GEXFExporter<V,E> extends BaseExporter<V,E> implements GraphExporter<V,E>
Exports a graph as GEXF (Graph Exchange XML Format).
For a description of the format see https://gephi.org/gexf/format/schema.html. A nice primer for the format is located at https://gephi.org/gexf/1.2draft/gexf-12draft-primer.pdf.
- Author:
- Dimitrios Michail
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGEXFExporter.AttributeCategoryDenotes the category of a GEXF-Attribute.static classGEXFExporter.ParameterParameters that affect the behavior of the exporter. -
Field Summary
Fields inherited from class org.jgrapht.nio.BaseExporter
edgeAttributeProvider, edgeIdProvider, graphAttributeProvider, graphIdProvider, vertexAttributeProvider, vertexIdProvider -
Constructor Summary
Constructors Constructor Description GEXFExporter()Constructs a new exporter with integer id providers for the vertices and the edges.GEXFExporter(java.util.function.Function<V,java.lang.String> vertexIdProvider, java.util.function.Function<E,java.lang.String> edgeIdProvider)Constructs a new exporter. -
Method Summary
Modifier and Type Method Description voidexportGraph(Graph<V,E> g, java.io.Writer writer)Exports a graph in GraphML format.java.lang.StringgetCreator()Get the creator for the meta field.java.lang.StringgetDescription()Get the description for the meta field.java.lang.StringgetKeywords()Get the keywords for the meta field.booleanisParameter(GEXFExporter.Parameter p)Return if a particular parameter of the exporter is enabledvoidregisterAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type)Register a GEXF AttributevoidregisterAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type, java.lang.String defaultValue)Register a GEXF AttributevoidregisterAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type, java.lang.String defaultValue, java.lang.String options)Register a GEXF AttributevoidsetCreator(java.lang.String creator)Set the creator for the meta field.voidsetDescription(java.lang.String description)Set the description for the meta field.voidsetKeywords(java.lang.String keywords)Set the keywords for the meta field.voidsetParameter(GEXFExporter.Parameter p, boolean value)Set the value of a parameter of the exportervoidunregisterAttribute(java.lang.String name, GEXFExporter.AttributeCategory category)Unregister a GraphML-AttributeMethods inherited from class org.jgrapht.nio.BaseExporter
getEdgeAttribute, getEdgeAttributeProvider, getEdgeAttributes, getEdgeId, getEdgeIdProvider, getGraphAttribute, getGraphAttributeProvider, getGraphId, getGraphIdProvider, getVertexAttribute, getVertexAttributeProvider, getVertexAttributes, getVertexId, getVertexIdProvider, setEdgeAttributeProvider, setEdgeIdProvider, setGraphAttributeProvider, setGraphIdProvider, setVertexAttributeProvider, setVertexIdProvider
-
Constructor Details
-
GEXFExporter
public GEXFExporter()Constructs a new exporter with integer id providers for the vertices and the edges. -
GEXFExporter
public GEXFExporter(java.util.function.Function<V,java.lang.String> vertexIdProvider, java.util.function.Function<E,java.lang.String> edgeIdProvider)Constructs a new exporter.- Parameters:
vertexIdProvider- for generating vertex identifiers. Must not be null.edgeIdProvider- for generating edge identifiers. Must not be null.
-
-
Method Details
-
isParameter
Return if a particular parameter of the exporter is enabled- Parameters:
p- the parameter- Returns:
trueif the parameter is set,falseotherwise
-
setParameter
Set the value of a parameter of the exporter- Parameters:
p- the parametervalue- the value to set
-
registerAttribute
public void registerAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type)Register a GEXF Attribute- Parameters:
name- the attribute namecategory- the attribute categorytype- the attribute type
-
registerAttribute
public void registerAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type, java.lang.String defaultValue)Register a GEXF Attribute- Parameters:
name- the attribute namecategory- the attribute categorytype- the attribute typedefaultValue- default value
-
registerAttribute
public void registerAttribute(java.lang.String name, GEXFExporter.AttributeCategory category, GEXFAttributeType type, java.lang.String defaultValue, java.lang.String options)Register a GEXF Attribute- Parameters:
name- the attribute namecategory- the attribute categorytype- the attribute typedefaultValue- default valueoptions- the possible options
-
unregisterAttribute
Unregister a GraphML-Attribute- Parameters:
name- the attribute namecategory- the attribute category
-
getCreator
public java.lang.String getCreator()Get the creator for the meta field.- Returns:
- the creator for the meta field
-
setCreator
public void setCreator(java.lang.String creator)Set the creator for the meta field.- Parameters:
creator- the creator for the meta field
-
getKeywords
public java.lang.String getKeywords()Get the keywords for the meta field.- Returns:
- the keywords for the meta field
-
setKeywords
public void setKeywords(java.lang.String keywords)Set the keywords for the meta field.- Parameters:
keywords- the keywords for the meta field
-
getDescription
public java.lang.String getDescription()Get the description for the meta field.- Returns:
- the description for the meta field
-
setDescription
public void setDescription(java.lang.String description)Set the description for the meta field.- Parameters:
description- the description for the meta field
-
exportGraph
Exports a graph in GraphML format.- Specified by:
exportGraphin interfaceGraphExporter<V,E>- Parameters:
g- the graphwriter- the writer to export the graph- Throws:
ExportException- in case any error occurs during export
-