文档

同构

计算两个图之间的等价关系

语法

P =同构(G1, G2)
P =同构(___、名称、值)

描述

例子

P=同构(G1, G2计算一个图的同构图间等价关系G1G2,如果存在的话。如果不存在同构,则P是一个空数组。

例子

P=同构(___名称,值指定带有一个或多个名称-值对参数的附加选项。例如,您可以指定“NodeVariables”以及节点变量列表,以表明同构必须保持这些变量有效。

例子

全部折叠

创建并绘制两个有向图,然后计算它们之间的同构关系。

G1 =有向图([1 1 1 2 3 4],[2 3 4 4 4 1]);G2 =有向图([3 3 3 2 1 4],[1 4 2 3 2 2 2]);subplot(1,2,1) plot(G1) subplot(1,2,2) plot(G2)

p =同构(G1, G2)
p =3 1 4 2

结果表明:reordernodes (G2, p)具有相同的结构G1

创建并绘制两个图表,G1G2

G1 = graph([1 1 1 2 2 3 3 4 5 5 7 7],[2 4 5 3 6 4 7 8 6 8 8]);情节(G1,“XData”,[1 4 4 1 2 3 3 2],“YData”,[4 4 1 1 3 3 2 2])

G2 =图({“一个”“一个”“一个”“b”“b”“b”“c”“c”“c”' d '' d '' d '},...‘g’“h”“我”‘g’“h”“j”‘g’“我”“j”“h”“我”“j”});情节(G2,“XData”,[1 2 2 2 1 2 1 1 1],“YData”,[4 4 3 2 3 1 2 1])

计算图之间的同构关系,如果存在。结果表明,尽管图节点的标签和布局不同,但可以排列它们来表示相同的图。

p =同构(G1, G2)
p =1 2 5 3 4 7 6 8

计算两个图之间的两个不同的同构关系。其中一个关系保留node属性,而另一个关系忽略它。

创建两个相似的图表。添加节点属性颜色每一个图表。

G1 =图({' d '“e”“f”}, {“e”“f”' d '});G1.Nodes。颜色= {“蓝”“红色”“红色”} ';G2 =图({“一个”“b”“c”}, {“b”“c”“一个”});G2.Nodes。颜色= {“红色”“红色”“蓝”} ';

在同一幅图中并排绘制图表。将节点涂成红色颜色= '红色'

subplot(1,2,1) p1 = plot(G1);突出(p1, {“e”“f”},“NodeColor”“r”) subplot(1,2,2) p2 = plot(G2);突出(p2, {“一个”“b”},“NodeColor”“r”

计算图之间的同构关系,忽略颜色财产。

p =同构(G1, G2)
p =1 2 3

再次计算同构,但这一次保留的值颜色比较中的属性。同构返回保留颜色财产。

p =同构(G1, G2,“NodeVariables”“颜色”
p =3 1 2

查看中的节点G1G2同构匹配在一起。

[G1.Nodes。的名字,G2.Nodes。的名字(p)]
ans =3 x2单元阵列{'d'} {'c'} {'e'} {'a'} {'f'} {'b'}

输入参数

全部折叠

的单独参数指定的输入图形有向图对象。使用创建无向图或有向图创建一个有向图。

G1G2必须两个对象或两有向图对象。

例子:G1 =图(1、2)

例子:G1 =有向图([1 2],[2 3])

名称-值对的观点

指定可选的用逗号分隔的对名称,值参数。的名字参数是name和价值为对应值。的名字必须出现在单引号内(' ').可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:P =同构(G1,G2,' novariables ',{'Var1' 'Var2'})

全部折叠

边缘变量要保留,指定为逗号分隔的对,由“EdgeVariables”以及字符向量或字符向量的单元格数组。使用此选项可指定一个或多个同时存在于这两个边缘中的边变量G1。边缘G2。边缘.同构必须保留指定的边变量才能有效。

数据类型:字符|细胞

节点变量,指定为逗号分隔的对,由“NodeVariables”以及字符向量或字符向量的单元格数组。使用此选项可指定两个节点中的一个或多个节点变量G1。没有desG2。没有des.同构必须保留指定的节点变量才能有效。

数据类型:字符|细胞

输出参数

全部折叠

同构的置换向量,当同构存在时作为列向量返回,或者作为空数组返回[]当同构不存在时。如果P是不是空的,那么reordernodes (G2, P)具有相同的结构G1

更多关于

全部折叠

图的同构

两个图,G1G2,如果存在节点的排列,则是同构的P这样reordernodes (G2, P)具有相同的结构G1

同构的两个图具有相似的结构。例如,如果一个图包含一个循环,那么与该图同构的所有图也包含一个循环。

介绍了R2016b

这个话题有用吗?