0% found this document useful (0 votes)
104 views22 pages

CSE123 Lecture8 2012 PDF

The document provides information on different types of plots in MATLAB: - It describes the ezplot function for simple 2D plotting and provides examples. - The plot command is explained for linear 2D plots along with options to modify properties like line width, color, and markers. - Methods for plotting multiple lines on the same figure like hold on and plotyy are demonstrated. - Commands for editing plots, adding labels, titles and grids are summarized. - Examples of 3D plots including surface, mesh, and contour plots are outlined.

Uploaded by

HasanMert
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)
104 views22 pages

CSE123 Lecture8 2012 PDF

The document provides information on different types of plots in MATLAB: - It describes the ezplot function for simple 2D plotting and provides examples. - The plot command is explained for linear 2D plots along with options to modify properties like line width, color, and markers. - Methods for plotting multiple lines on the same figure like hold on and plotyy are demonstrated. - Commands for editing plots, adding labels, titles and grids are summarized. - Examples of 3D plots including surface, mesh, and contour plots are outlined.

Uploaded by

HasanMert
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/ 22

CSE 123

Plots in MATLAB

Easiest way to plot Syntax: ezplot(fun) ezplot(fun,[min,max]) ezplot(fun2) ezplot(fun2,[xmin,xmax,ymin,ymax]) ezplot(fun) plots the expression fun(x) over the default domain -2pi < x < 2pi. ezplot(fun,[min,max]) plots fun(x) over the domain: min < x < max. ezplot(fun2) plots fun2(x,y)= 0 over the default domain -2pi < x <2pi, -2pi < y < 2pi.

Example:

>> ezplot('x^3-x',[-5 5])

>>ezplot('x^3-2*x')

x 3-2 x 250 200

150

100
150 100

50
50 0 -50 -100 -150 -200 -250 -6 -4 -2 0 x 2 4 6

-50

-100

-150 -5

-4

-3

-2

-1

>> ezplot('x^2-y^4[-5,5,-4,4])
x 2-y 4 = 0 4 3 2 1 0 -1 -2 -3 -4 -5

-4

-3

-2

-1

0 x

plot command: Linear 2-D plot Syntax: plot(X,Y,linespec, PropertyName',PropertyValue, )

LineWidth - specifies the width (in points) of the line.

MarkerEdgeColor - specifies the color of the marker or the edge color for filled markers (circle, square, diamond, pentagram, hexagram, and the four triangles). MarkerFaceColor - specifies the color of the face of filled markers.
MarkerSize - specifies the size of the marker in units of points.

Examples:
x=1:50; y=sin(x*pi/10)+cos(x*pi/10); plot(x,y)
1.5 1

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

45

50

Examples:
plot(x,y,'--ro')
1.5 1

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

45

50

Example
1.5

plot(x,y,'-k', 'Linewidth', 5 )

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

45

50

Example
plot(x,y,'-kd', 'MarkerEdgeColor',g', 'MarkerFaceColor', r' )
1.5

0.5

-0.5

-1

-1.5

10

15

20

25

30

35

40

45

50

Plotting multiple plots on the same figure


x=1:50; y1=cos(x*pi/10); y2=sin(x*pi/10); plot(x,y1) hold on plot(x,y2)
x=1:50; y1=cos(x*pi/10); y2=sin(x*pi/10); plot(x,y1,x,y2)

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 5 10 15 20 25 30 35 40 45 50

1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 5 10 15 20 25 30 35 40 45 50

Plotting multiple plots on the same figure


x=1:50; y1=cos(x*pi/10); y2=sin(x*pi/10); plot(x,y1,k) hold on plot(x,y2,r )

plot(x,y1,k,x,y2,r)

Editing plots with editplot

Syntax plotedit on plotedit off

subplot command Syntax:


Notes:

subplot(N,M,i)

N= number of rows M= number of columns i= current plot number

*This function does NOT create a plot *It HAS to be used BEFORE the plot function !!!! 4 plots: in a 2x2 array = 2-by-2 matrix

2 plots: one above the other = 2-by-1 matrix

Subplot(2,1,1)

(2,2,1)

(2,2,2)

Subplot(2,1,2)

(2,2,3)

(2,2,4)

Plotting multiple plots on the same figure


x=1:50; y1=cos(x*pi/10); y2=1000*y1; plot(x,y1,x,y2,k); grid on

subplot(2,1,1) plot(x,y1); grid on subplot(2,1,2) plot(x,y2,k); grid on

Plot features: xlabel, ylabel, title, grid


x=1:50; y1=cos(x*pi/10); y2=sin(x*pi/10); plot(x,y1,x,y2) xlabel(x); ylabel(y); title(Example) grid on Plot features: text and legend text(15,0.8,y1) text(20,-0.2,y2) legend(y1,y2)

plotyy 2-D line plots with y-axes on both left and right side Syntax plotyy(X1,Y1,X2,Y2)

plotyy(X1,Y1,X2,Y2) plots X1 versus Y1 with y-axis labeling on the left and plots X2 versus Y2 with y-axis labeling on the right.

Example: >>x=0:0.05:5; y=sin(x.^2); z=cos(x.^2); plotyy(x,y,x,z)


1 1

0.5

0.5

-0.5

-0.5

-1

0.5

1.5

2.5

3.5

4.5

-1 5

%% Line Plot of a Chirp x=0:0.05:5; y=sin(x.^2); plot(x,y); >> %% Bar Plot of a Bell Shaped Curve x = -2.9:0.2:2.9; bar(x,exp(-x.*x)); >> %% Bar Plot of a Bell Shaped Curve x = -2.9:0.2:2.9; bar(x,exp(-x.*x)); >> %% Stairstep Plot of a Sine Wave x=0:0.25:10; stairs(x,sin(x));

>> %% Errorbar Plot x=-2:0.1:2; y=erf(x); e = rand(size(x))/10; errorbar(x,y,e); >> % Polar Plot t=0:.01:2*pi; polar(t,abs(sin(2*t).*cos(2*t))); >> x = 0:0.1:4; y = sin(x.^2).*exp(-x); stem(x,y)

Logarithmic Plots

commands semilogx() semilogy() plots x data on log axis and y on linear axis plots y data on log axis and x on linear axis

loglog()

plots x and y on logarithmic axes

Logarithmic Plots

Example: plot y=e2x >> x=0:0.1:10; >> y=exp(2.*x); >>plot(x,y) >> semilogy(x,y)
2.5 x 10
4

10

10

1.5

10

10

0.5

10

10

10

10

Three dimensional plots


Three dimensional line plots the simplest form is

plot(x,y,z) x,y,z are arrays of equal size containing the locations of data points to plot.
Example: x(t)= e-0.2tcos (2t)

y(t)= e-0.2tsin(2t) motion of an insect


t=0:0.1:10; x=exp(-0.2*t).*cos(2*t); y=exp(-0.2*t).*sin(2*t); plot(x,y) title('\bf 2D plot') xlabel('\bfx') ylabel('\bfy') grid on

Three dimensional plots


instead we could plot the variables with plot3() to preserve the time information as well as the 2D position of the object. plot3(x,y,t) t=0:0.1:10; x=exp(-0.2*t).*cos(2*t); y=exp(-0.2*t).*sin(2*t); plot3(x,y,t) title('\bf 3D plot') xlabel('\bfx') ylabel('\bfy') zlabel('\bftime') grid on

Three dimensional plots


surface, Mesh and contour plots: such kind of plots represent data that is a function of 2D variables. a user must create three arrays of equal size;

Commands: mesh(x,y,z) surf(x,y,z) contour(x,y,z)

creates a mesh or wireframe plot where x,y and z are 2D arrays of containing x,y,z values at every point, respectively. creates a surface plot, creates a contour plot,

[x,y]=meshgrid(xstart:xinc:xend, ystart:yinc:yend) easily create x and y arrays required for 3D plots to create a 3D plot use meshgrid to create the arrays of x and y values then evaluate the function to plot at each of x,y pairs. finally call the above mentioned functions to create plot.

Three dimensional plots


Example: create the mesh plot of the following function

z ( x, y) e
over the interval [x,y]=meshgrid(-4:0.1:4);

0.5[ x 2 0.5( x y ) 2 ]

4 x 4 and 4 y 4

z= exp(-0.5*(x.^2+0.5*(x-y).^2)); mesh(x,y,z);

You might also like