2013-11-28 71 views
0

我想表示兩個模糊集合在MatLab中作爲三維網格的交集。如何在兩個向量上繪製交集操作MatLab

這裏是我的矢量集:

x = [0.3 0.5 0.7] 
y = [0.5 0.7 0.1] 

其次是這些語句:

[u,v] = meshgrid(x,y) 
w = min(u,v) 
mesh(u,v,w) 

xy蜱似乎是所有的地方和不相關的實際指數每個向量的數量,即1 to 3,圖形應表示小三角形/ T範數的形狀。

目前,它看起來像這樣:

Graph

下面是一個例子了我的書,我以下:

fuzzy sets

忽略什麼樣子的分數,他們是分隔符。下面是所得到的曲線圖:

fuzzy intersection

+0

發佈一個答案。這是你的預期嗎?如果不是,你需要更仔細地解釋你想要達到的目標。不是每個人都知道模糊交點是什麼。 –

+0

感謝您的回答,它不是我正在尋找的內容,所以我要做的是編輯我的初始文章,其中包含兩個向量/集合以及它應該是什麼樣子的圖形。 – user1574598

+0

對不起,模糊交集是兩個模糊集的邏輯與。在這種情況下,我們採用兩套中的最小值來生成一個新的集合。因此,示例圖像是集合「f」和「d」被交叉的三維圖示。我只是想弄清楚如何自己繪製一個例子。 – user1574598

回答

1

仰視模糊集和路口後,這裏是我想出。首先,讓我們重現經典範例:

% possible values and associated degrees of truth for F 
Fv = 1 : 5; 
Ft = [0 0.5 1 0.5 0]; 

% possible values and associated degrees of truth for D 
Dv = 2 : 4; 
Dt = [0 1 0]; 

% determine degrees of truth for fuzzy intersection 
It = bsxfun(@min, Ft', Dt); 

% plot 
h = mesh(Dv, Fv, It); 
set(h, 'FaceColor', 'none') 
set(h, 'EdgeColor', 'k') 
xlim([0 4.5]) 
ylim([0 5]) 
xlabel D 
ylabel F 
view(37.5, 30) 

結果是:

fuzzy intersection

不一樣漂亮在你的書,但同樣的事情。

應用相同的代碼到你的例子產量:

fuzzy intersection

+0

感謝您的幫助。也許書中的圖形是物理繪製的。 – user1574598

+0

不客氣。 :)是的,或者至少不是一個簡單的3d情節。作者考慮了它應該是什麼樣子,並連接了金字塔形狀的頂點。 –

1

通過u,v你告訴網格在他們使用的值的參數,即,從xy的值,這些數據點和相應的蜱的定位。如果你只是想在1,2,3的位置和滴答聲,請將這些論點排除在外。

mesh(w) 

+0

事實證明,這實際上是正確的情節,從我的第二個答案應該會變得更清楚。 –