2012-12-11 154 views
0

我知道,正方形二進制矩陣可以轉換爲圖形。例如,在下面的matlab矩陣使用gplot可以轉換到圖形將矩形二元矩陣轉換爲圖形?

0 1 1 
1 0 0 
0 1 0 

可以由曲線圖

A->B, A->C, B->A,C->B 

來表示,但我不知道是否有一個矩形矩陣轉換等

的方式
0 1 
1 0 
0 1 

在matlab或任何其他語言的圖形?

另外我的行和列是不同的變量。

+1

又是什麼那矩形矩陣的意思是? –

+0

矩形矩陣意味着行數和列數不同。這個問題是它不會完全是圖的鄰接矩陣。 – discipulus

+0

我沒有詢問「矩形」這個詞。我問了它代表什麼。當行數不等於列數時,對於鄰接矩陣有什麼意義? –

回答

1

如果你在一個Bipartite graph確實有興趣,喜歡@Ante曾建議,你可以巧妙地利用gplot這裏還有:

  1. 首先用填充您的長方形矩陣創建一個正方形的鄰接矩陣零列:

    A = [0 1; 1 0; 0 1]; 
    Asq = eye(sum(size(A))); 
    Asq(1:size(A, 1), end - size(A, 2) + 1:end) = A; 
    
  2. 讓我們決定行的頂點將在左側和列的頂點將在右側。現在創建座標的矩陣頂點:

    xy1 = [ones(size(A, 1), 1), (1:size(A, 1))'];  % # Row vertices 
    xy2 = [2 * ones(size(A, 2), 1), (1:size(A, 2))']; % # Column vertices 
    
  3. 繪製圖表:

    gplot(Asq, [xy1; xy2], '*-') 
    axis([0, 3, 0, size(A, 1) + 1]) 
    

這是你應該得到什麼,你的例子: enter image description here