2013-06-06 5 views
0

Je continue à obtenir cette erreur:erreur en utilisant mesh, Matlab

erreur en utilisant mesh (ligne 76) Z doit être une matrice, et non pas un scalaire ou un vecteur.

ici est le code:

f = @(x,y)(get(handles.funkcja , 'string')); 
[x,y] = meshgrid([-10:1:10],[-10:1:10]); 
mesh(x,y,f(x,y)); 

exemple de handles.funkcja:. X^2 + y^2

Répondre

0

A une supposition,

get(handles.funkcja , 'string') 

renvoie une chaîne.. Vous pouvez le tester en vérifiant si

f(1,2) 

retours

ans = 

    x.^2+y.^2 

Il doit retourner

ans = 

    5 

Vous pouvez potentiellement résoudre ce problème avec

f = @(x,y)(eval(get(handles.funkcja , 'string')));