GXL (.gxl)
Background & Context
-
- GXL graph data format.
- Used for the storage and exchange of graphs.
- GXL is an acronym derived from Graph Exchange Language.
- XML-based format.
- Represents typed, attributed, directed, and undirected graphs.
- Can also store nested graphs and hypergraphs.
- Supports user-defined edge and vertex types.
- Developed in 2000 by a group of research organizations.
Import & Export
- Import["file.gxl"] imports the graphs stored in the specified file, given as a single Graph object or a list of graphs.
- Export["file.gxl",expr] exports an adjacency matrix or edge information for one graph or for multiple graphs to the GXL format.
- Import["file.gxl",elem] imports the specified element from a GXL file.
- Import["file.gxl",{elem,suba,subb,…}] imports a subelement.
- Import["file.gxl",{{elem1,elem2,…}}] imports multiple elements.
- The import format can be specified with Import["file","GXL"] or Import["file",{"GXL",elem,…}].
- Export["file.gxl",expr,elem] creates a GXL file by treating expr as specifying element elem.
- Export["file.gxl",{expr1,expr2,…},{{elem1,elem2,…}}] treats each expri as specifying the corresponding elemi.
- Export["file.gxl",expr,opt1->val1,…] exports expr with the specified option elements taken to have the specified values.
- Export["file.gxl",{elem1->expr1,elem2->expr2,…},"Rules"] uses rules to specify the elements to be exported.
- See the following reference pages for full general information:
-
Import, Export import from or export to a file CloudImport, CloudExport import from or export to a cloud object ImportString, ExportString import from or export to a string ImportByteArray, ExportByteArray import from or export to a byte array
Import Elements
- General Import elements:
-
"Elements" list of elements and options available in this file "Summary" summary of the file "Rules" list of rules for all available elements - Data representation elements:
-
"AdjacencyMatrix" edge information, given as a list of matrices "EdgeAttributes" edge attributes, represented as a list of rules "EdgeLabels" list of strings representing edge labels "EdgeRules" connectivity data for all graphs, given as an array of rules "EdgeTypes" edge types, given as a list of strings "Graph" first graph stored in the file, given as a Graph object "Graphics" first graph stored in the file, rendered as a graph plot "GraphicsList" all graphs, given as a list of graphics objects "GraphList" all graphs, given as a list of Graph objects "VertexAttributes" vertex attributes, represented as a list of rules "VertexCount" number of vertices in each graph, given as a list of integers "VertexList" vertices, given as a list of strings "VertexTypes" vertex types, given as a list of strings - Import by default uses "Graph" for simple GXL files and "GraphList" for multigraph GXL files.
- Element specifications for GXL files containing multiple graphs:
-
"GraphNames" names of the graphs, given as a list of strings elem,"name" element elem for the graph specified by "name" elem,n data representation element elem for the n graph in this file elem,{n1,n2,…} element elem for graphs n1, n2, … elem,All element elem for all graphs, given as a list
Options
- General Import options:
-
ImageSize Automatic specify the overall size of the image to display for a graph - Export option:
-
DirectedEdges Automatic whether the data to be exported represents a directed graph - When exporting from edge rules or from a symmetric adjacency matrix, edges are taken to be undirected by default.
- When importing from GXL, all options supported by Graph can be given. Common settings include:
-
EdgeLabels Automatic labels and label placement for edge EdgeWeight Automatic weight for edge VertexCoordinates Automatic center coordinate for vertex VertexLabels Automatic labels and label placement for vertex VertexShape Automatic graphic shape for vertex - When importing "Graphics", all options supported by GraphPlot can be given. Common settings include:
-
DirectedEdges Automatic whether to show edges as directed arrows EdgeLabels Automatic whether to include labels given for edges EdgeShapeFunction Automatic function to give explicit graphics for edges VertexLabels Automatic whether to show vertex names as labels VertexShapeFunction Automatic function to give explicit graphics for vertices - When exporting from a Graph object, Wolfram Language graph attribute values are often exported as strings using Compress.
Examples
open allclose allBasic Examples (9)
Import a directed graph from GXL:
Show the Import elements available in this file:
Import an edge and vertex list and the connectivity rules from this file:
Import edge and vertex attributes:
Import an undirected graph, rendered as a graph plot:
Import the adjacency matrix for this graph:
Export a Graph object to GXL: