Problem with mesh function: ??? Index exceeds matrix dimensions.

2 views (last 30 days)
Hello,
I have the above named error all the time, but I can't see the dimension problem.
-------------------------------
figure
x=[1:31];
y=[1:5];
[X,Y]=meshgrid(x,y);
Z=Price(x,y);
mesh(X,Y,Z)
xlabel('Stock Price')
ylabel('Sigma')
zlabel('Call Price')
-------------------------------
"Price" is a 31x5 matrice. I tried also playing with m x n changes of all inputs but nothing did work so far.
Thank you a lot for your help.
Dominik

Accepted Answer

Walter Roberson
Walter Roberson on 6 Apr 2013
If you are getting "index exceeds matrix dimensions" on the mesh() call, then likely you have accidentally created a variable named "mesh".
Note: if x and y are those vectors then Price(x,y) would be the same as Price by itself, and there would be no reason to use meshgrid(). Just mesh(Price);
  3 Comments
Dominik
Dominik on 6 Apr 2013
ok, I solved it: I fliped x and y in meshgrid(x,y);
Walter Roberson
Walter Roberson on 6 Apr 2013
I do not get "Index exceeds matrix dimension": I get "data dimensions must match".
Change your meshgrid() to ndgrid()

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!