主要内容

图表和矩阵

这个例子显示了一个稀疏矩阵的应用程序,并解释了图表和矩阵之间的关系。

图是一组指定的节点和连接,或边缘,它们之间。图有许多形状和大小。一个例子是巴克明斯特·富勒测地线的连接图穹顶,这也是足球的形状或碳60分子。

在MATLAB®,您可以使用巴基函数来生成图形的穹顶。

[B、V] =巴基;图G = (B);p =情节(G);轴平等的

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

你也可以指定节点坐标改变图形的显示。

p。XData = V (: 1);p。YData = V (:, 2);

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

巴基函数可用于创建图,因为它返回一个邻接矩阵。邻接矩阵是一种方法来表示图中的节点和边。

构造图的邻接矩阵,然后节点编号1到n (i, j)的每个元素n×n矩阵设置为1,如果节点我连接节点j,否则和0。因此,对于无向图的邻接矩阵是对称的,但是这种不需要指示图。

例如,这是一个简单的图及其相关的邻接矩阵。

%定义矩阵。一个= [0 1 1 0;1 0 0 1;1 0 0 1;0 1 1 0];%画一幅画显示了连接节点。cla次要情节(1、2、1);gplot ([0, 1 0 1; 1 1; 0 0],“。”);文本((-0.2,1.2 - -0.2,1.2),(1.2,1.2,-。2。2)(“1234”)”,“HorizontalAlignment”,“中心”)轴([1 2 1 2],“关闭”)%画一幅画显示了邻接矩阵。次要情节(1、2、2);xtemp = repmat (1:4, 1、4);ytemp =重塑(repmat(1:4 4 1), 16日1)';文本(xtemp闲置,ytemp闲置,char (' 0 '+ (:)),“HorizontalAlignment”,“中心”);线([。25 0 0 3.75升至南4 4 3.75],[0 0 4 4南0 0 4 4])轴

稀疏矩阵是代表非常大的图特别有用。这是因为每个节点通常是连接到只有少数其他节点。因此,邻接矩阵的非零项的密度通常是相对较小的大型图表。巴基球邻接矩阵是一个很好的例子,因为它是一个60-by-60对称稀疏矩阵只有180非零元素。这个矩阵的密度仅为5%。

因为邻接矩阵定义了图,你可以画出巴基球的一部分通过使用邻接矩阵的条目的一个子集。

使用邻接函数创建一个新的图的邻接矩阵。显示节点在一个半球的巴基球向邻接矩阵来创建一个新的索引,较小的图。

图A =邻接(G);H =图((1:30,1:30));h =情节(h);

图包含一个坐标轴对象。坐标轴graphplot类型的对象包含一个对象。

想象这个半球的邻接矩阵,使用间谍函数图邻接矩阵中的非零元素的轮廓。

注意,矩阵是对称的,因为如果节点与节点j,然后节点j连接节点。

间谍((1:30,1:30)标题(巴基球邻接矩阵的左上角)

图包含一个坐标轴对象。坐标轴对象标题左上角的巴基球邻接矩阵包含一个类型的对象。

最后,这是一个间谍整个巴基球邻接矩阵的情节。

间谍(A)标题(“巴基球邻接矩阵”)

图包含一个坐标轴对象。坐标轴对象与标题巴基球邻接矩阵包含一个类型的对象。

另请参阅

|