triangular_lattice_graph#

triangular_lattice_graph(m, n, periodic=False, with_positions=True, create_using=None)[source]#

返回 \(m\)\(n\) 的三角晶格图。

三角晶格图(triangular lattice graph)是一种二维网格图(grid graph),其中每个方形单元都有一个对角线边(每个网格单元都有一个弦)。

返回的图具有 \(m\) 行和 \(n\) 列的三角形。行和列包括向上和向下的三角形。行形成恒定高度的条带。列形成一系列菱形,与两侧的列交错排列。另一种描述尺寸的方法是,节点形成一个由 m+1 行和 (n + 1) // 2 列组成的网格。奇数行的节点相对于偶数行会水平偏移。

有向图类型的边指向向上或向右。

默认情况下或当 with_positions is True 时计算节点位置。每个节点的位置(嵌入欧几里德平面中)使用边长为 1 的等边三角形存储在图中。因此,节点行之间的高度为 \(\sqrt(3)/2\)。节点位于第一象限,节点 \((0, 0)\) 位于原点。

参数:
mint

晶格中的行数。

nint

晶格中的列数。

periodicbool (default: False)

如果为 True,则使用周期性边界条件连接网格的边界顶点。边界之间的连接是最后一行的三角形和最后一列的三角形。这意味着周期性晶格的节点少一行和一列。周期性晶格要求 m >= 3n >= 5,并且如果 mn 为奇数,则允许但不完全对齐。

with_positionsbool (default: True)

将每个节点的坐标存储在图节点属性“pos”中。坐标提供了一个由等边三角形组成的晶格。周期性位置会以非线性方式垂直移动节点,这样边就不会过多重叠。

create_usingNetworkX 图构造器,可选 (default=nx.Graph)

要创建的图类型。如果是图实例,则在填充之前会清除。

返回:
NetworkX 图

m 乘 n 的三角晶格图。