2016-12-24 64 views
1

如何做到這一點,但沒有contourmeshgrid功能?我需要使用plot函數的替代代碼。我需要一個替代解決方案使用繪圖功能

[x,y]=meshgrid(linspace(-3,3,1000)); 
contour(x,y,x.^2 + y.^2-2.*x,'LevelList',0,'LineColor','r','LineWidth',2); 
hold on 
contour(x,y,x.^2 - y.^2-y,'LevelList',0,'LineColor','b','LineWidth',2); 
+0

爲什麼不能使用'meshgrid'和'contour'? – edwinksl

回答

0

你可以做的是創建矩陣xy「手動」,創建一個表示你的函數的符號邏輯映像,並使用bwboundaries提取的「符號變化」的路線:

t=linspace(-3,3,100);   % set up matrices 
o = ones(size(t));   
x = o'*t; 
y = x'; 
image = x.^2 + y.^2-2.*x > 0; % generate image 
BW = bwboundaries(image);  % extract paths from image 
hold on 
for k=1:numel(BW); 
    path = BW{k}; 
    x = t(path(:,1)); 
    y = t(path(:,2)); 
    plot(x,y);     % plot paths 
end