how to plot contour function

1 view (last 30 days)
Jong Hyun Lee
Jong Hyun Lee on 1 Apr 2022
Commented: Walter Roberson on 1 Apr 2022
I want to plot a contour plot of temperatuer T, where T=x*e^y (T has x and y components)
range -50<=x<=50, 0<=y<=100
I followed the guide by matlab of plotting contour plot
(This plot was most visible)
x=linspace(-50,50);
y=linspace(0,100);
[X,Y]=meshgrid(x,y);
z=X.*exp(Y)
contour(x,y,z)
however, the given range for x and y gave me a very weired looking graph.
Hence, I change the range to make it visible
x=linspace(-5,5);
y=linspace(0,1);
[X,Y]=meshgrid(x,y);
z=X.*exp(Y)
contour(x,y,z)
Is there any mistake in first code?

Accepted Answer

Voss
Voss on 1 Apr 2022
x = 0:10;
y = 0:0.2:2;
[X,Y] = meshgrid(x,y);
T = X.*exp(Y);
contour(X,Y,T) % using matrices X, Y
% contour(x,y,T) % same result, using vectors x, y
colorbar
  2 Comments
Jong Hyun Lee
Jong Hyun Lee on 1 Apr 2022
Edited: Jong Hyun Lee on 1 Apr 2022
Thank you for the answer, is there any options that I can display a plot into gradation form by using contour function? not lines?
Like this?
Walter Roberson
Walter Roberson on 1 Apr 2022
x = 0:10;
y = 0:0.2:2;
[X,Y] = meshgrid(x,y);
T = X.*exp(Y);
contourf(X,Y,T, 20) % using matrices X, Y
% contour(x,y,T) % same result, using vectors x, y
colorbar

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 1 Apr 2022
xvec = linspace(0, 5, 25);
yvec = linspace(-3, 3, 25);
[X, Y] = meshgrid(xvec, yvec);
T = X .* exp(Y);
surf(X, Y, T, 'edgecolor', 'none')

Categories

Find more on Contour Plots 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!