图的构建与表示

图是 Wolfram 语言是非常重要的一员,并且可以作为输入、输出在程序和文档中使用. 无向图和有向图可以均匀地处理,并且支持大量顶点和边的标准属性. 更重要的是,图也支持自定义属性,用于建模或者处理计算灵活度. 图可以转化为大量不同表示,包括矩阵. 图可以使用高保真度导出为各种文件格式. 图可以用很多方式构建. 它们可以按符号方式直接从顶点和边构建. 它们可以从内置精选的理论或者经验图产生. 特殊图可以从参数式指定产生. 服从大量图分布的随机图使得您可以构建仿真互联网或者引用图并且测试算法. 图可以通过各种类型的矩阵完全指定,或者也可以从各种支持的文件格式导入. 图也可以通过在图上逐步执行操作构建.

Graph 表示一个普通图,或者从顶点和边创建

UndirectedEdge 无向边 () (输入为 <->)

DirectedEdge 有向边 () (输入为 ->)

基本属性

VertexList, EdgeList 图中顶点和边的列表

VertexIndex, EdgeIndex 图中顶点或者边的索引

AdjacencyList  ▪  IncidenceList  ▪  EdgeRules  ▪  PlanarFaceList

矩阵表示 »

AdjacencyMatrix, AdjacencyGraph 矩阵表示和图的创建

IncidenceMatrix  ▪  KirchhoffMatrix  ▪  WeightedAdjacencyMatrix  ▪  ...

图注释 »

AnnotationValue 获取并且设置顶点或者边的注释值

EdgeWeight  ▪  VertexWeight  ▪  EdgeCapacity  ▪  VertexCapacity  ▪  ...

导入和导出图 »

Import, Export 导入和导出图

"GraphML"  ▪  "GXL"  ▪  "Graphlet"  ▪  "Pajek"  ▪  "TGF"  ▪  "DOT"  ▪  "DIMACS"  ▪  "Graph6"  ▪  "Sparse6"  ▪  "LEDA"

精选图

GraphData 理论图的集合

ExampleData 经验图的集合

Polyhedron Chemical Word Country Isotope Species ...

参数式图

CompleteGraph 生成一个完全图或者完全 k 部图

BuckyballGraph  ▪  ButterflyGraph  ▪  CirculantGraph  ▪  CompleteKaryTree  ▪  CycleGraph  ▪  DeBruijnGraph  ▪  GridGraph  ▪  HararyGraph  ▪  HypercubeGraph  ▪  KaryTree  ▪  KnightTourGraph  ▪  PetersenGraph  ▪  StarGraph  ▪  TorusGraph  ▪  TuranGraph  ▪  WheelGraph

结构化的图

PathGraph 一般有向或无向路径

TreeGraph 一般有向或无向树

PlanarGraph 一般有向或无向平面图

来自数据的图

RelationGraph 产生基于数据和二进制关系的图

NearestNeighborGraph 为普通元素产生 k 最近邻图

NestGraph 产生嵌套函数图

ExpressionGraph 产生表达式树结构的图

ClusteringTree 根据元素的分层聚类产生树

CayleyGraph  ▪  MoleculeGraph  ▪  MeshConnectivityGraph  ▪  MorphologicalGraph

随机图 »

RandomGraph 生成服从图分布的随机图

GraphPropertyDistribution  ▪  UniformGraphDistribution  ▪  ...

图的操作与修改 »

Subgraph 提取子图

NeighborhoodGraph  ▪  GraphUnion  ▪  VertexAdd  ▪  EdgeAdd  ▪  ...