1
$\begingroup$

I'm having trouble graphing using Matlab, and was hoping someone could help. I just want to hand the program a function like $z=x^2-3xy+2$, or whatever, and have Matlab generate a 3D graph. From the tutorials I've seen online, it seems like this is difficult. Can I not just hand the program that equation and the domain that I want, and have it generate a graph? What code will generate that graph? Thanks!

  • 3
    The documentation for `meshgrid` has an example of [creating a 3D graph in three lines of code](http://www.mathworks.com/help/techdoc/ref/meshgrid.html) (two, if you fold the second line into the third). It would be nice to not need to go through the motions of creating a meshgrid, but that's how it is in Matlab.2012-08-17

2 Answers 2

3

As an example, lets plot the function in the interval $x=[-2;2], y=[-2;2]$. As mentioned in the comments, this can be achieved in Matlab by the code

[X,Y] = meshgrid(-2:.2:2, -2:.2:2);                                 Z = X.^2 - 3*X.*Y + 2; surf(X,Y,Z) 

It can also be done in Maple by the following code

plot3d(x^2 - 3*x*y, x=-2..2, y=-2..2); 

which is probably more intuitive. At last, one can use Wolfram Alpha.

  • 0
    thanks for the help. I used Maple at my last job, and so far I find it much more intuitive than Matlab.2012-08-17
0

A simple way to do that is to use ezsurf:

ezsurf('x^2-3*x*y+2') 

or fsurf in recent Matlab versions.