Download presentation
Presentation is loading. Please wait.
Published byEdith Doyle Modified over 9 years ago
1
MATLAB Plotting With MATLAB 1
2
Two Dimensional Plots The xy plot is the most commonly used plot by engineers The independent variable is usually called x The dependent variable is usually called y 2
3
Consider This xy Data 3 time, secDistance, Ft 00 20.33 44.13 66.29 86.85 1011.19 1213.19 1413.96 1616.33 1818.17 Time is the independent variable and distance is the dependent variable
4
Define x and y and call the plot function 4 You can use any variable name that is convenient for the dependent and independent variables time, secDistance, Ft 00 10.33 34.13 5 6.29 76.85 911.19 1113.19 1313.96 1516.33 1718.17
5
5
6
Engineers always add … Title X axis label, complete with units Y axis label, complete with units Often it is useful to add a grid 6
7
Creating Multiple Plots MATLAB overwrites the figure window every time you request a new plot To open a new figure window use the figure function – for example figure(2) 7
8
Plots With Multiple Lines hold on – Freezes the current plot, so that an additional plot can be overlaid When you use this approach the additional line is drawn in blue – the default drawing color 8
9
9 The first plot is drawn in blue
10
10 The hold on command freezes the plot The second line is also drawn in blue, on top of the original plot
11
Plots With Multiple Lines You can also create multiple lines on a single graph with one command Using this approach each line defaults to a different color 11 Each set of ordered pairs will produce a new line
12
Variations If you use the plot command with a single matrix, MATLAB plots the values versus the index number Usually this type of data is plotted on a bar graph When plotted on an xy grid, it is often called a line graph 12
13
13
14
If you want to create multiple plots, all with the same x value you can Use alternating sets of ordered pairs – plot(x,y1,x,y2,x,y3,x,y4) Or group the y values into a matrix – z=[y1,y2,y3,y4] – plot(x,z) 14
15
15 Alternating sets of ordered pairs Matrix of Y values Define x first
16
16 The peaks(100) function creates a 100x100 array of values. Since this is a plot of a single variable, we get 100 different line plots
17
Plots of Complex Arrays If the input to the plot command is a single array of complex numbers, MATLAB plots the real component on the x-axis and the imaginary component on the y- axis 17
18
Multiple arrays of complex numbers If you try to use two arrays of complex numbers in the plot function, the imaginary components are ignored 18
19
19
20
Line, Color and Mark Style You can change the appearance of your plots by selecting user defined – line styles – color – mark styles Try using “help plot” for a list of available styles 20
21
Available choices 21 Table 5. 2 Line, Mark and Color Options Line TypeIndicatorPoint TypeIndicato r ColorIndicator solid-point.blueb dotted:circleogreeng dash-dot-.x-markxredr dashed--plus+cyanc star*magentam squaresyellowy diamonddblackk triangle down v triangle up^ triangle left< triangle right > pentagramp hexagramh
22
Specify your choices in a string For example plot(x,y,':ok') – strings are identified with a tick mark – if you don’t specify style, a default is used line style – none mark style – none color - blue 22
23
plot(x,y,':ok') In this command – the : means use a dotted line – the o means use a circle to mark each point – the letter k indicates that the graph should be drawn in black 23
24
24 dotted line circles black
25
25 specify the drawing parameters for each line after the ordered pairs that define the line
26
Axis scaling MATLAB automatically scales each plot to completely fill the graph If you want to specify a different axis – use the axis command axis([xmin,xmax,ymin,ymax]) Lets change the axes on the graph we just looked at 26
27
27 Use the axis function to override the automatic scaling
28
Annotating Your Plots You can also add – legends – textbox Of course you should always add – title – axis labels 28
29
29
30
Improving your labels You can use Greek letters in your labels by putting a backslash (\) before the name of the letter. For example: title(‘\alpha \beta \gamma’) creates the plot title α β γ To create a superscript use curly brackets title(‘x^{2}’) gives x 2 30
31
Subplots 31 The subplot command allows you to subdivide the graphing window into a grid of m rows and n columns subplot(m,n,p) rowscolumnslocation
32
subplot(2,2,1) 32 2 rows 2 columns 1 2 34
33
33 2 rows and 1 column
34
Other Types of 2-D Plots Polar Plots Logarithmic Plots Bar Graphs Pie Charts Histograms X-Y graphs with 2 y axes Function Plots 34
35
Polar Plots Some functions are easier to specify using polar coordinates than by using rectangular coordinates For example the equation of a circle is – y=sin(x) in polar coordinates 35
36
36
37
Logarithmic Plots A logarithmic scale (base 10) is convenient when – a variable ranges over many orders of magnitude, because the wide range of values can be graphed, without compressing the smaller values. – data varies exponentially. Aplot – uses a linear scale on both axes semilogy – uses a log 10 scale on the y axis semilogx – uses a log 10 scale on the x axis loglog – use a log 10 scale on both axes 37
38
38
39
39
40
Bar Graphs and Pie Charts MATLAB includes a whole family of bar graphs and pie charts – bar(x) – vertical bar graph – barh(x) – horizontal bar graph – bar3(x) – 3-D vertical bar graph – bar3h(x) – 3-D horizontal bar graph – pie(x) – pie chart – pie3(x) – 3-D pie chart 40
41
41
42
42
43
Histograms A histogram is a plot showing the distribution of a set of values 43
44
X-Y Graphs with Two Y Axes Scaling Depends on the largest value plotted Its difficult to see how the blue line behaves, because the scale isn’t appropriate 44
45
45 The plotyy function allows you to use two scales on a single graph
46
Function Plots 46 Function plots allow you to use a function as input to a plot command, instead of a set of ordered pairs of x- y values fplot('sin(x)',[-2*pi,2*pi]) function input as a string range of the independent variable – in this case x
47
47
48
Three Dimensional Plotting Line plots Surface plots Contour plots 48
49
Three Dimensional Line Plots These plots require a set of order triples ( x-y-z values) as input 49 The z-axis is labeled the same way the x and y axes are labeled
50
50 MATLAB uses a coordinate system consistent with the right hand rule
51
Surface Plots Represent x-y-z data as a surface then use surf(z) 51 %surfplot diary surf.dat z=[1,2,3,4,5,6,7,8,9,10; 2,4,6,8,10,12,14,16,18,20; 3,4,5,6,7,8,9,10,11,12] x=linspace(1,50,10) y=linspace(500,1000,3) surf(z) xlabel('x-axis') ylabel('y-axis') zlabel('z-axis') diary
52
Bode Plots 52
53
A Resistor in the Laplace (S) Domain 53 + + _ _ v V i I a a b b Times v = iRV = IR
54
An Inductor in the Laplace (s) Domain 54 + _ v i I 0 = 0 L L + _ V sL I Times L
55
A Capacitor in the Laplace (s) Domain 55 +v-+v- i +V0_+V0_ +v-+v- I C C 1/sC Time s
56
Low Pass filter 56
57
Circuit Transfer Function H(s) 57 + v 1 (t) _ 2 2 ¼ F 4/s + v 2 (t) _ + v 1 (s) _ + V 2 (s) _ V 2 (s) V 1 (s) = 4/s 2 + 4/s = 2 S + 2 H(s) =
58
MATLAB Software – Bode Plot Template 58 H(s) = 2 / (s + 2) n=[0 2]; d=[1 2]; bode (n,d); w=logspace (-1, 2, 200); [mag,pha]=bode (n,d,w); semilogx (w,20*log10 (mag));grid title(‘Bode Plot’) xlabel (‘w (Rad/sec)’) ylabel(‘Decibels (dB)’) Start at 10 -1 Stop at 10 2 generates 200 points between 10 0 & 10 4
59
Bode Plot 59
60
Bode Plot 60
61
61
62
62 1/RC = 1 / (50 x 10 3 )(0.1 x 10 -6 ) = 200 1/0.1s1/sC =
63
MATLAB Software For Semi-log Paper n=[1]; d=[1]; bode (n,d); w=logspace (0, 4, 200); [mag,pha]=bode (n,d,w); semilogx (w,20*log10 (mag));grid title(‘Bode Plot’) xlabel (‘w (Rad/sec)’) xlabel(‘Decibels (dB)’) 63 Start at 10 0 Stop at 10 4 generates 200 points between 10 0 & 10 4
64
Semi-log Paper 64
65
65
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.