简化
减少多重图简单的图
语法
描述
指定一个方法来选择多个边缘。边缘属性保存。H
=简化(G
,pickmethod
)pickmethod
可以“第一”
(默认),“最后一次”
,“最小值”
,或“马克斯”
。
指定一个方法结合多重边的边的权值为一个新的边缘的重量。所有其他属性H
=简化(G
,aggregatemethod
)G
是下降了。aggregatemethod
可以“和”
或“的意思是”
。
指定是否要保存或删除self-loops从图使用任何输入参数组合在以前的语法。例如,H
=简化(___,selfloopflag
)“keepselfloops”
指定节点与一个或多个self-loops将有一个自身环简化图。
例子
简化油印简单图
创建一个加权无向多重图有几个节点1和节点2之间的边缘。
图G = ((1 1 1 1 2 3) (2 2 2 3 3 4) 1:6);G.Edges
ans =6×2表EndNodes重量________ ________ 1 2 1 1 2 2 1 2 3 1 3 4 3 2 3 5 6
简化油印成一个简单的图,这样只有一个节点1和节点2之间的边缘。简化
保持这两个节点之间的边,:G.Edges (1)
,滴。
G =简化(G);G.Edges
ans =4×2表EndNodes重量________ ________ 1 2 1 1 3 4 2 3 5 3 4 6
选择或组合多个图形边缘
使用第二个输入简化
选择一个方法,选择多个边缘之间或多个边缘组合到一个。
创建一个加权油印。在这个图,节点3和节点4间发生的五边,但边缘随机权重。查看表和边缘绘制图供参考。
图G =([1 2 3 3 3 3 3 3],[2 3 1 4 4 4 4 4],兰迪(10 1 8));G.Edges
ans =8×2表EndNodes重量________ ________ 1 2 9 1 3 2 2 3 10 3 4 3 4 7 3 4 1 3 4 3 3 4 6
情节(G,“EdgeLabel”G.Edges.Weight)
命令简化(G)
不断重复的第一边缘。不过,您可以指定一个不同的选择与第二个输入/组合方法。
选择多个边缘之间的选择是:“第一”
(默认),“最后一次”
,“最小值”
,“马克斯”
。保持与最大重量重复边缘。
H_pick =简化(G,“马克斯”);情节(H_pick“EdgeLabel”H_pick.Edges.Weight)
结合多个边缘成一个选项:“和”
和“的意思是”
。重复和边缘在一起产生一个边缘更大的重量。
H_comb =简化(G,“和”);情节(H_comb“EdgeLabel”H_comb.Edges.Weight)
保持Self-Loops图
简化图,同时保留self-loops使用“keepselfloops”
选择。
创建一个多重图有两个节点和若干self-loops。并保存self-loops简化图。
图G = ([1 1 1 1 1 1 1 2 2 2 2], [1 1 1 1 2 2 2 2 2 2 2]);情节(G)轴平等的
G =简化(G,“keepselfloops”);情节(G)轴平等的
优势指数和项重复边缘
使用的第二个和第三个输出简化
得到的信息有多少()边缘的总和。
创建一个无向多重图有三个节点和四个边。
图G = ([1 1 1 2], [2 2 3 3]);G.Edges
ans =4×1表EndNodes ________ 1 2 1 2 1 3 2 3
简化图并指定三个输出可获得更多信息合并后的边缘。
(G, ei, ec) =简化(G)
图G =属性:边缘:[3 x1表]节点:[3 x0表)
ei =4×11 1 2 3
电子商务=3×12 1 1
ei(我)
是代表边缘的简化图的边缘我
在旧图。因为前两个边缘是重复的,ei (1) = (2) = 1
。同时,电子商务(1)= 2
,因为有两个新图形边缘对应边缘1在旧图。
使用特定的边缘变量简化图
展示如何简化多重图使用“PickVariable”
和“AggregationVariables”
名称-值对。
创建一个多重图,节点代表位置和边缘代表模式的交通工具。边的属性反映了每个运输方式的成本和时间。预览边表。
图G = ([1 1 1 1 1 1 2 2 2], [2 2 2 3 3 3 3 3 3], [], {“纽约”,“波士顿”,“华盛顿特区”。});G.Edges。模式=分类([1 2 3 1 2 3 1 2 3],(1 2 3){“空气”“火车”“公共汽车”});G.Edges。成本= (400 80 325 250 100 75 150 100)';G.Edges。时间= [1 7 5 1.5 10 8 1.75 11 9]';G.Edges
ans =9×4表EndNodes模式成本___________________________________ _____ _____ __{“纽约”}{}“波士顿”空气400 1{“纽约”}{}“波士顿”培训80名7{“纽约”}{}“波士顿”巴士40 5{“纽约”}{华盛顿特区}空气250 1.5{“纽约”}{华盛顿特区'}培训100名10{“纽约”}{华盛顿特区}总线75 8{“波士顿”}{华盛顿特区空气}325 1.75{“波士顿”}{华盛顿特区'}培训150名11{“波士顿”}{华盛顿特区}总线100 9
绘制图供参考。标签每个边缘上的运输方式,使边缘线宽度成正比,和每条边的颜色与成本成正比。
情节(G,“EdgeLabel”cellstr (G.Edges.Mode),“线宽”G.Edges.Time. /分钟(G.Edges.Time),“EdgeCData”G.Edges.Cost) colorbar
使用“最小值”
选择方法和指定的值“PickVariable”
随着“时间”
变量之间找到最快捷的运输方式,每组节点。
t =简化(G,“最小值”,“PickVariable”,“时间”);情节(t)“EdgeLabel”cellstr (t.Edges.Mode))
使用“和”
聚合方法和指定的值“AggregationVariables”
作为“成本”
计算了每个连接多少钱。
c =简化(G,“和”,“AggregationVariables”,“成本”);情节(c,“EdgeLabel”c.Edges.Cost)
输入参数
pickmethod
- - - - - -边缘选择方法
“第一”
(默认)|“最后一次”
|“最小值”
|“马克斯”
边挑选方法,指定为“第一”
,“最后一次”
,“最小值”
,或“马克斯”
。边挑选方法提供了一种选择的几个边缘保护当多个边缘之间存在相同的两个节点。
如果该方法
“第一”
或“最后一次”
,然后简化
只保留第一个或最后一个边缘边缘表中发生G.Edges
。如果该方法
“最小值”
或“马克斯”
,然后简化
只保留了边缘与最小或最大重量。的重量
变量必须存在于G.Edges
,除非你使用“PickVariable”
名称-值对基地选择在不同的变量。
例子:简化(G,“最后”)
aggregatemethod
- - - - - -聚合方法
“和”
|“的意思是”
聚合方法,指定为“和”
或“的意思是”
。聚合方法提供了一种方法来将一些边缘合并到一个边缘当有多个相同的两个节点之间的边。
默认情况下,简化
只有金额或平均图中边的权值和所有其他边缘属性下降。然而,您可以使用“AggregationVariables”
名称-值对将指定哪个数值变量G.Edges
维护并聚合。
例子:简化(G, '和')
selfloopflag
- - - - - -保持self-loops切换
“omitselfloops”
(默认)|“keepselfloops”
切换self-loops,指定为:
“omitselfloops”
——删除所有self-loops图。这是默认的。“keepselfloops”
——节点与一个或多个self-loops有一个自身环的简化图。
例子:简化(G,“和”,“keepselfloops”)
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:H =简化(G,‘和’,‘AggregationVariables’, {‘Var1’‘Var2})
PickVariable
- - - - - -变量选择基础优势
“重量”
(默认)|变量名|数字索引
变量选择基地优势,指定为逗号分隔组成的“PickVariable”
和一个变量名或数字索引。使用这个名称-值对选择一个变量G.Edges
除了“重量”
使用与“最小值”
或“马克斯”
挑选方法。简化
只保留边缘的最小或最大价值选择变量,当有几个相同的两个节点之间的边。
例子:简化(G,‘敏’,‘PickVariable’, 3)
例子:简化(G,‘敏’,‘PickVariable’,‘var3’)
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|字符
|字符串
AggregationVariables
- - - - - -变量总
“重量”
(默认)|变量名|单元阵列的变量名|字符串数组|数值向量|逻辑向量|函数处理
变量聚合,指定为逗号分隔组成的“AggregationVariables”
和一个变量名,单元阵列变量名,字符串数组,数字矢量,逻辑向量,或函数处理。使用这个名称-值对来选择一个或多个变量G.Edges
可以结合“和”
或“的意思是”
聚合方法。简化
将这些变量的值组合成一个值为一个新的边缘有几个相同的两个节点之间的边。的价值“AggregationVariables”
可以是下列之一:
特征向量指定单个表变量名
单元阵列特征向量,其中每个元素是一个表变量名
指定一个或多个变量名的字符串数组
矢量表变量的指数
逻辑向量的元素对应于表变量
真正的
包括相应的变量假
不包括它一个函数处理的
G.Edges
表作为输入,并返回一个逻辑标量,等@isnumeric
例子:简化(G,“和”,“AggregationVariables”, [4 5 6])
例子:简化(G,‘意思’,‘AggregationVariables’, {“var5 var7 '})
例子:简化(G,‘意思’,‘AggregationVariables’, @isnumeric)
数据类型:单
|双
|逻辑
|function_handle
|字符
|字符串
|细胞
输出参数
H
——简化图
图
对象|有向图
对象
简化图,作为一个返回图
或有向图
对象。H
不包含任何重复相同的两个节点之间的边,这样吗ismultigraph (H)
返回逻辑0
(假
)。Self-loops也删除,除非你指定“keepselfloops”
选择。
eind
——优势指数
向量
优势指标,作为一个向量返回。的边缘H
代表边缘我
在G
是由H.Edges (eind(我):)
。如果边缘我
在G
是一个被自身环呢eind(我)
是0
。
ecount
——边数
向量
边数,作为一个向量返回。ecount(我)
边的数量在吗G
对应于边缘我
在H
。
版本历史
另请参阅
Apri esempio
如果dispone di una versione modificata di questo esempio。Desideri aprire questo esempio con le modifiche星期二吗?
第一MATLAB
海脂肪clic苏联合国collegamento切corrisponde questo第一MATLAB:
Esegui il第一inserendolo所以nella隙缝di第一MATLAB。我浏览器web非supportano金宝app comandi MATLAB。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。