0% found this document useful (0 votes)
16 views

Matlab 2D and 3D PLOTS

The document discusses various MATLAB commands for creating vectors, plotting functions, and customizing plots. It demonstrates how to generate equally spaced vectors, plot simple functions between given ranges, and customize plots by adding titles, labels, and legends. The document also shows how to plot multiple graphs in the same figure window.

Uploaded by

Mukt Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views

Matlab 2D and 3D PLOTS

The document discusses various MATLAB commands for creating vectors, plotting functions, and customizing plots. It demonstrates how to generate equally spaced vectors, plot simple functions between given ranges, and customize plots by adding titles, labels, and legends. The document also shows how to plot multiple graphs in the same figure window.

Uploaded by

Mukt Shah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 45

MATLAB

2D and 3D PLOTS
MATLAB PLOTTING
Creating Vectors
Create vector with equally spaced intervals
>> x=0:0.5:pi
x =
0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000

Create vector with n equally spaced intervals
>> x=linspace(0, pi, 7)
x =
0 0.5236 1.0472 1.5708 2.0944 2.6180 3.1416

Equal spaced intervals in logarithm space
>> x=logspace(1,2,7)
x =
10.0000 14.6780 21.5443 … 68.1292 100.0000

1 2
10 10
Note: The logspace creates 7 equally distributed values between            and  
100
Length of the 
90
Initial  increment
80
Value Final value
70

60

50

40

30

>> x=[0:5:100]; 20

>> y=x; 10

>> plot(x,y)
0 10 20 30 40 50 60 70 80 90 100

100

>> stem(x,y) 90

80

70

60

50

40

NOTE: stem(  ) is used to plot 30

discrete sequence data.  20

10

0
0 10 20 30 40 50 60 70 80 90 100
10000

9000

8000

7000

6000

5000

>> x=[‐100:20:100]; 4000

3000

>> y=x^2; 2000

??? Error using ==> mpower 1000

Matrix must be square. 0
-100 -80 -60 -40 -20 0 20 40 60 80 100

>>y=x.^2; 10000

>> plot(x,y) 9000

8000
>> stem(x,y) 7000

6000

5000

4000

3000

2000

1000

0
-100 -80 -60 -40 -20 0 20 40 60 80 100
6
x 10
1

0.8

0.6

0.4

0.2

>> x=[‐100:5:100]; -0.2

-0.4

>> y=x.^3; -0.6

-0.8

>> plot(x,y) -1
-100
6
-80 -60 -40 -20 0 20 40 60 80 100
x 10

>> stem(x,y) 1

0.8

0.6

0.4

0.2

NOTE:  0

-0.2
If the length of the increments -0.4

are small, then curve will be -0.6

more smoother. -0.8

-1
-100 -80 -60 -40 -20 0 20 40 60 80 100
2D PLOTS
To Plot the function sin(x) between 0≤x≤4π
Final value
Initial value No.of increments

0.8

0.6

>> x=linspace(0,4*pi,100); 0.4

>> y=sin(x); 0.2

0
>> plot(y); -0.2

-0.4

-0.6

-0.8

-1
0 10 20 30 40 50 60 70 80 90 100
2D PLOTS
To Plot the function e(‐x/3) between 0≤x≤4π
1

0.9

0.8

>> x1=linspace(0,4*pi,100); 0.7

0.6

>> y1=exp(‐x1/3); 0.5

>>plot(y1);
0.4

0.3

0.2

0.1

0
0 10 20 30 40 50 60 70 80 90 100

To Plot the function cos(x) between 0≤x≤4π
1

0.8

>> a=linspace(0,4*pi,100); 0.6

0.4

>> b=cos(a); 0.2

>> plot(a,b); -0.2

-0.4

-0.6

-0.8

-1
0 2 4 6 8 10 12 14
2D PLOTS
To Plot the function e(‐x/3)sin(x) between 0≤x≤4π
0.7

0.6

0.5

>> z=linspace(0,4*pi,100); 0.4

0.3

>> y1=sin(z); 0.2

0.1

>> y2=exp(‐z/3); 0

-0.1

>>y3=y1*y2; -0.2

-0.3
0 10 20 30 40 50 60 70 80 90 100

??? Error using ==> mtimes
Inner matrix dimensions must  0.7

agree.
0.6

0.5

>>y3=y1.*y2; 0.4

0.3

>>plot(y3); 0.2

0.1

>>stem(y3); 0

-0.1

-0.2

-0.3
0 10 20 30 40 50 60 70 80 90 100
AXIS SCALES
MATLAB COMMANDS
Using M‐file, plotting with title and labels

this is sinus function


1

0.8
x=linspace(0,2*pi,100); 0.6
y=sin(x); 0.4

plot(x,y); 0.2
f(x)-values
title('this is sinus function'); 0

xlabel('x‐values'); -0.2

ylabel('f(x)‐values'); -0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
x-values
MULTIPLE GRAPHES
MULTIPLE GRAPHES
Using M‐file, plotting multiple graphs in a figure window
1

t = 0:pi/100:2*pi;
0.8

0.6

y1=sin(t); 0.4

0.2

y2=sin(t+pi/2); 0

-0.2
NOTE:
plot(t,y1,t,y2) -0.4

-0.6
When  we  plot 
grid on -0.8

-1
multiple  graphs, 
the  command  
0 1 2 3 4 5 6 7

t = 0:pi/100:2*pi; 0.8
y1
y2 “legend (  )”
y1=sin(t);
0.6

0.4
is  used  for 
y2=sin(t+pi/2); 0.2
identification  of 
0

plot(t,y1,t,y2) -0.2 graphs


-0.4

legend('y1','y2') -0.6

grid off -0.8

-1
0 1 2 3 4 5 6 7
SUB PLOTS
SUB PLOTS
Using M‐file, plotting multiple plots by dividing
the figure window
1 1

t = 0:pi/100:2*pi; 0.5 0.5

y1=sin(t); 0 0

y2=sin(t+pi/2); -0.5 -0.5

-1 -1
subplot(2,2,1) 0 2 4 6 8 0 2 4 6 8

plot(t,y1)
subplot(2,2,2)
plot(t,y2)
SUB PLOTS
SUB PLOTS
clc
clear all SUB PLOTS
x=0:.1:2*pi;
subplot(2,2,1);
plot(x,sin(x),'b*'); 1
sin(x)
1
cos(x)

title('sin(x)') 0.5 0.5

subplot(2,2,2); 0 0

plot(x,cos(x),'r‐o'); -0.5 -0.5

-1 -1
title('cos(x)') 0 2 4 6 8 0 2 4 6 8

exp(-x) sin(3x)
subplot(2,2,3) 1 1

0.5
plot(x,exp(‐x),'g.'); 0.5 0

title('exp(‐x)') -0.5

subplot(2,2,4); 0
0 2 4 6 8
-1
0 2 4 6 8

plot(x,sin(3*x),'m‐o');
title('sin(3x)')
COLOR PLOTS
2D PLOTS
To plot with color and special symbols
2D PLOTS
2D PLOTS

To plot with color and special symbols

100

80

60

40

x = (‐pi/2)+0.01:0.01:(pi/2)‐0.01; 20

plot(x,tan(x),'g‐*'); 0

-20

grid on -40

-60

-80

-100
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
2D PLOTS

To plot with color and special symbols
This is cosine function
1

0.8

x = ‐pi:0.01:pi;  0.6

plot(x,cos(x),'y‐*'); 0.4

title('This is cosine  0.2

0
function'); -0.2

grid on -0.4

-0.6

-0.8

-1
-4 -3 -2 -1 0 1 2 3 4
2D PLOTS
To draw a circle with centre (1, 3)

clc 5
Circle

clear all 4.5

t = linspace(0, 2*pi, 101); 4

x = 1 +2*cos(t); 3.5

y = 3 +2*sin(t); y-axis
3

plot(x,y,'r.') 2.5

axis equal 2

xlabel('x‐axis') 1.5

ylabel('y‐axis') 1
-1.5 -1 -0.5 0 0.5 1
x-axis
1.5 2 2.5 3 3.5

title('Circle‘)
2D PLOTS

To plot with color and special symbols
1
cos(x)
0.8 cos(2x)

0.6

y = linspace(‐10,10,1000) 0.4

plot(y,cos(y),'b.',y,cos(2*y),'g.') 0.2

y a x is
xlabel('x axis') 0

-0.2

ylabel('y axis') -0.4

legend('cos(x)','cos(2x)‘) -0.6

-0.8

-1
-10 -8 -6 -4 -2 0 2 4 6 8 10
x axis
Plotting Polynomials
Polynomial function A(s)=S3+3S2+3S+1

s = linspace (‐5, 5, 100); 250

coeff = [ 1 3 3 1]; 200

150

A = polyval (coeff, s); 100

plot (s, A)

A(s)
50

title('Polynomial function  0

A(s)=S^3+3S^2+3S+1') -50

xlabel ('s') -100


-5 -4 -3 -2 -1 0
s
1 2 3 4 5

ylabel ('A(s)')
Drawing Bar Charts
x = [1:10];
y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95];
bar(x,y), xlabel('Student'),ylabel('Score'),
title('First Sem‘)

First Sem:
100

90

80

70

60
Score

50

40

30

20

10

0
1 2 3 4 5 6 7 8 9 10
Student
DRAWING CONTOURS
[x,y] = meshgrid(‐5:0.1:5,‐3:0.1:3); 
g = x.^2 + y.^2; 
contour(x,y,g)

-1

-2

-3
-5 -4 -3 -2 -1 0 1 2 3 4 5
DRAWING CONTOURS
[x,y] = meshgrid(‐5:0.1:5,‐3:0.1:3); 
g = x.^2 + y.^2; 
[C, h] = contour(x,y,g); 
set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2)
3

30
30

20

20
10
10

1
10

10
20

20
0

-1

-2
10

10

20
20
30

30

-3
-5 -4 -3 -2 -1 0 1 2 3 4 5
Plotting with command “ezplot ( )”
x 3 - 27 x

80

60

40

20
>>syms x; 0

>> y=x^3‐27*x; -20

>> ezplot(y) -40

-60

-80

-6 -4 -2 0 2 4 6
x

NOTE: By default, ezplot graphs from x=‐2*pi to x=+2*pi.
You can change the domain by adding a second argument
to the call to ezplot. For example, to plot the above function
from x=2 to x=4 you type:
x 3 - 27 x

-44

-45

-46

-47

-48

-49
ezplot(y,[2,4]) -50

-51

-52

-53

-54

2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 3.8 4


x
You may also change the limits of the y axis by 
using the ”ylim” function  after you have made the graph.

x 3 - 27 x
-40

-42

-44

-46

y=x^3‐27*x; -48

ezplot(y,[2,4]) -50

-52
ylim([‐60,‐40]) -54

-56

-58

-60
2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 3.8 4
x
Note that you don’t have to define y first to use ezplot;
you can just type in the function you want to graph:

cos(2 x) cos(x)

0.8

0.6

0.4

0.2

ezplot(cos(x)*cos(2*x)) 0

-0.2

-0.4

-0.6

-0.8

-1

-6 -4 -2 0 2 4 6
x
POLAR PLOTS
90
1
120 60
0.8

0.6
150 30
0.4

>> syms theta 0.2

>> ezpolar(cos(2*theta)) 180 0

210 330

240 300
270

r = cos(2 θ)
3D PLOTS

t=linspace(0,2*pi,500);
x=cos(t);
y=sin(t);
z=sin(5*t);
xlabel('x‐axis');
ylabel('y‐axis');
zlabel('z‐axis');
title('3D Curve');
comet3(x,y,z);
plot3(x,y,z);
Curves in space
You can use the ”ezplot3” function to graph curves 
in space. For example, we can define a helix by the 
parametric equations: x = cos(t), y = sin(t), z = t

x = cos(t), y = sin(t), z = t

>> syms t
>> ezplot3(cos(t),sin(t),t,[0,6*pi]) 20

15

10

z
5

0
1
0.5 1
0 0.5
0
-0.5 -0.5
y -1 -1
x
3D PLOTS
[x,y] = meshgrid(‐2:.2:2);
g = x .* exp(‐x.^2 ‐ y.^2);
surf(x, y, g)
0.5

-0.5
2
1 2
0 1
0
-1 -1
-2 -2
3D PLOTS
x=‐1:.05:1;
1

y=‐1:.05:1; 0.5

[x,y]=meshgrid(x,y); 0

z=x.*y.^2‐x.^3 -0.5

surf(x,y,z); -1
1
0.5 1

colormap spring 0
-0.5 -0.5
0
0.5

-1 -1

shading interp
3D PLOTS
2 x2 + 2 y2

syms x y
150

f = 2*(x^2+y^2)
100
ezsurf(f)
colormap cool 50

0
5
5
0
0
-5 -5
y x
3D PLOTS x 2+y 2

200

150

100

50

0
10
5 10
0 5
0
-5 -5
y -10 -10
x

>> ezsurf('x^2+y^2',[-10 10 -10 10])


>> ezsurf('x^2+y^2',[-10 10 -10 10],'circ') x 2+y 2

250

200

z 150

100

50

0
20
10 20
0 10
0
-10 -10
y -20 -20
x
SAVE PLOTS

You might also like