Download presentation
Presentation is loading. Please wait.
Published byGodfrey Daniel Modified over 8 years ago
1
More Matlab Graphics and GUI Graphics subplots some useful commands 3D graphics GUI GUI controls The callback property Other essential properties
2
Comments about the “Game of Life” Initial universe Time step
3
input universe embed output universe Count neighbors Make decisions
4
Count neighbors input universe Count the neighbors of a cell Matrix with the neighbors numbers
5
Subplots Subplot I Subplot II
6
h1 = subplot(7,7,[1 2 3 4 5 6... 8 9 10 11 12 13... 15 16 17 18 19 20... 22 23 24 25 26 27... 29 30 31 32 33 34... 36 37 38 19 40 41]); 7654321 141312111098 21201918171615 28272625242322 35343332313029 42414039383736 49484746454443
7
h1 = subplot(7,7,[1 2 3 4 5 6... 8 9 10 11 12 13... 15 16 17 18 19 20... 22 23 24 25 26 27... 29 30 31 32 33 34... 36 37 38 19 40 41]); get(h1,'type') ans = axes
8
h2=axes
9
subplot(7,7,[7 14])
11
h1 = subplot(7,7,[1 2 3 4 5 6... 8 9 10 11 12 13... 15 16 17 18 19 20... 22 23 24 25 26 27... 29 30 31 32 33 34... 36 37 38 19 40 41]); 7654321 141312111098 21201918171615 28272625242322 35343332313029 42414039383736 49484746454443
12
The interactively edited figure/axes/object is accessible through the gcf/gca /gco commands (get current figure/axes/object). >> get(gca) ALim = [0 1] ALimMode = auto AmbientLightColor = [1 1 1] Box = on CameraPosition = [5.5 5.5 17.3205] CameraPositionMode = auto CameraTarget = [5.5 5.5 0] CameraTargetMode = auto CameraUpVector = [0 1 0] CameraUpVectorMode = auto CameraViewAngle = [6.60861] CameraViewAngleMode = auto : Useful Commands
13
plot(x,y)
14
hl=findobj(gcf,’type’,’line’)
15
set(h1,'color','r');
16
set(gcf,'tag','first‘); Figure; y = x.^-2; plot(x,y);
17
firstFigure = findobj('tag','first'); h2 = findobj(firstFigure,'type','line') set(h2,'marker','*');
18
firstFigure = findobj('tag','first'); h2 = findobj(firstFigure,'type','line') set(h2,'marker','*');
19
3D graphics x = [-2:0.2:2] x = [ -2 -1.8 …. 1.8 2] y = [-4:0.4:4] y = [ -4 -3.6 …. 3.6 4] We want to calculate and displayZ=x(x 2 -y 2 )
20
3D graphics surf(XX,YY,ZZ) size(XX) ans = 21 21 XX(1:5,1:5) ans = -2.0000 -1.8000 -1.6000 -1.4000 -1.2000 ….. replica of x length(y) rows
21
surf(XX,YY,ZZ) size(XX) ans = 21 21 XX(1:5,1:5) ans = -2.0000 -1.8000 -1.6000 -1.4000 -1.2000 …..
22
surf(XX,YY,ZZ) size(XX) ans = 21 21 XX(1:5,1:5) ans = -2.0000 -1.8000 -1.6000 -1.4000 -1.2000 …..
23
3D graphics surf(XX,YY,ZZ) size(YY) ans = 21 21 YY(1:5,1:5) ans = -4.0000 -4.0000 -4.0000 -4.0000 -4.0000 …. -3.6000 -3.6000 -3.6000 -3.6000 -3.6000 …. -3.2000 -3.2000 -3.2000 -3.2000 -3.2000 …. -2.8000 -2.8000 -2.8000 -2.8000 -2.8000 …. -2.4000 -2.4000 -2.4000 -2.4000 -2.4000 ….. replica of y Length(x) columns
24
3D graphics surf(XX,YY,ZZ) size(ZZ) ans = 21 21 ZZ = XX.*(XX.^2-YY.^2); Element-by-element matrix operations
25
How do we create XX and YY? [XX YY] = meshgrid(x,y); Were [XX YY] = meshgrid(x) is the same as [XX YY] = meshgrid(x,x);
26
How does Matlab know how to relate some value with a specific color? Colormaps! A colormap is an m-rows by 3 column matrix Each row is a color specified in RGB values (between 0 and 1) C=get(1,'colormap') C = 0 0 0.5625 0 0 0.6250......... 0.5625 1.0000 0.4375 0.6250 1.0000 0.3750......... 0.6250 0 0 0.5625 0 0 0.5000 0 0
27
colormap(cool) “colormap” is a property of the figure
28
colormap(colorcube)
29
The same plot as a contour map colormap(jet) contour(XX,YY,ZZ,100)
30
… and with a colorbar colorbar
31
Solid shading We can change the way the surface displays by changing its shading: >>shading flat faceted %default interp >>surf(peaks) %creates 49 by 49 matrix % an plots its values %against x,y indices flat faceted interpolated
32
Every axes has a property called ‘view’ that controls the azimuth (az) and elevation (el) of the viewpoint To change the viewpoint we use either: view(az,el) or set(axes_handle,’View’,[az el])
33
>>view(-37.5,30) >>view(-10.0,30) >>view(0,30)>>view(0,0)
34
Special 3d plots contour3(x,y,z,n) %create n realistic contours interpreting z %as the height from the x y plane. If specified % x and y should have the same size as z >>contour3(topo,30) >>axis off
35
Special 3d plots We can create a sphere or a cylinder (of radius =1) with little effort >>[x,y,z]=sphere; %will compute the required % N+1 (N=20 by default) coordinates so >>surf(x,y,z) %will plot sphere surface >>axis equal Note: sphere without left arguments will plot the surface. sphere(n) use n instead of the default of 20
36
Special 3d plots To create a cylinder we issue the following command: >>[x,y,z]=cylinder; >>surf(x,y,z)%this creates a basic cylinder of %radius 1
37
We can also create cylinder with reference to a specific profile. We will now generate a cylinder with the e sin(t) profile >> t = 0:pi/10:2*pi; >> [X,Y,Z] = cylinder(exp(sin(t))); >> surf(X,Y,Z) Special 3d plots
38
Graphical User Interfaces Why? Built in UIs Uicontrols GUI programming
39
Every day examples
40
GUI examples
44
Graphic Objects figure axes 2D-plot 3D-plot axis labels title GUI objects pushbutton toggle edit text menu
45
1.Enable you to share your work with other people (your advisor/lab mates or grandmother) 2.Easy way to perform repetitive task that need constant user input 3.Create interactive demos to your applications 4.It’s fun… Motivation or why GUIs?
46
GUI components Figure window GUI controllers which are divided into two major classes: uimenu (like the File,Edit etc) uicontrols (buttons, lists, radio buttons pop-up list like in any other application) uimenu and uicontrols are children of the figure If an uimenu is implemented as submenu, then it is a child of another uimenu
47
The UIcontrols are common interface controlers Help us perform specific actions or set the variables for future actions Actions and options are selected by the mouse, some UIcontrols are also editable so we can use the keyboard as well Interface controllers
48
We can create UIcontrols simply by implementing the following syntax handle_to_UI=uicontrol(‘Property Name’,’Property Value’);
49
Interface controllers UIcontrol types are defined by their ‘style’ property: Check box 'checkbox'Editable text field 'edit' Toggle button 'toggle' 'Pop-up menus 'popupmenu' Push button 'pushbuttonList box 'listbox' Radio button 'radiobutton' Static text 'text' Slider 'slider'Frame 'frame'
50
Interface controllers are graphic objects Essential properties: Callback – A string with one or more commands that is executed when the controller is activated. May be empty – ''
51
Example uicontrol('style','pushbutton','callback','close(gcf)');
52
Interface controllers are graphic objects Essential properties: Callback – A string with one or more commands that is executed when the controller is activated. May be empty - '' Recommendation – always call a function that does what you want.
53
Interface controllers are graphic objects Essential properties: Callback – A string with one or more commands that is executed when the controller is activated. May be empty - '' Recommendation – always call a function that does what you want. Tag – a string that may be used as a unique identifier of the controller. h = findobj('Tag','1');
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.