# Introduction to MATLAB - PowerPoint PPT Presentation

1 / 27

Introduction to MATLAB Lecture 3: Data Visualization & User Interfaces Damon Tomlin February 22, 2008 A quick word about SPM . . . This can be a little intimidating . . . “Any sufficiently advanced technology is indistinguishable from magic.” -- Arthur C. Clarke, possibly describing SPM

## Related searches for Introduction to MATLAB

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Introduction to MATLAB

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

## Introduction to MATLAB

Lecture 3: Data Visualization & User Interfaces

Damon Tomlin

February 22, 2008

### A quick word about SPM . . .

This can be a little intimidating . . .

### “Any sufficiently advanced technology is indistinguishable from magic.”

-- Arthur C. Clarke, possibly describing SPM

• SPM is three things:

• Some functions that work on numbers (your data)

• Some functions that display the crunched numbers

• A bunch of buttons that run the functions when you press them

### Overview of MATLAB Graphics

• Figures

• Axes

• UI Objects

• Handles

• If you can see it, it has a handle.

• Some things you can’t see have handles, too.

• Use handles to manipulate properties.

### Handles & Properties

• Figures, axes, and graphics have handles, just like files

• These objects have properties

• These properties can be altered

### How many ways can we look at data?

• 2D line plots

• Pseudocolor Images

• Histograms

• 3D shapes

### 2D Plots

• plot(x,y);

• plot([x1 x2 x3],[y1 y2 y3]);

• plot(x1,y1,’r.’,x2,y2,’b-’);

### Images

• imagesc

• Pseudocolor

• Colormaps

• image

• M x N x 3 matrix

### Histograms

• hist

• designate bins

• bar

• generic bar graph

### 3D Visualization

• Surface plots

• Color

• Transparency

• Mesh plots

• 3D shapes

• xlabel, ylabel, zlabel

• title

• legend

### Other handy functions

• subplot(rows,columns,number)

• Axis([xmin xmax ymin max])

• set(handle,’PropertyName’,value, . . .);

• get(handle,’PropertyName’)

### What’s a Graphical User Interface? (GUI)

• Figure windows

• Appearance changes depending on inputs & outputs

• Eliminates command line typing

### Demystifying GUI’s

• Interface objects have properties

• Style – type of object

• String – text associated with object

• Callback – what the object does

• Value – current value of object

• What these properties mean depends on the type (Style) of object created

### UI Styles: Buttons

• Buttons cause commands to be executed

• Style – pushbutton

• String – text on the button

• Callback – string containing command(s) executed by button

• Value – not important

### The Eval Function

• Executes a string as though it were a command typed into a command window or function

• Example 1: eval(‘disp(a);’);

• Example 2: eval([‘save ‘ FileName ‘ a b;’]);

### Callbacks and Eval

• Callbacks are assigned within functions

• Callbacks are executed outside functions

• (usually)

• Therefore, any variables a callback needs have to be stored somehow.

• String – text on the button

• Value – whether button is pushed in or out

• Callback – exclusivity code & additional functions

• Used in sets for mutually exclusive, boolean options

### UI Styles: Check Boxes

• Style – checkbox

• String – text on the box

• Value – whether button is checked

• Callback – often nothing, unless switching the option’s value executes a function

• Used for boolean options

### UI Styles: Edit Windows

• Style – edit

• String – text in the box

• Value – not used

• Callback – function executed when Enter key is pressed

• Used for typed inputs of names & values

### UI Styles: Slider Bars

• Style – slider

• String – not used

• Value – position of slider – between Max and Min

• Callback – function executed when slider is moved

• Used when a variable can take on a spectrum of values

### UI Styles: Text Boxes

• Style – text

• String – text in the box

• Value – not used

• Callback – not used

• Used for displaying information, entitling portions of a GUI

### UI Styles: Frames

• Style – Frame

• String – not used

• Value – not used

• Callback – not used

• Used for grouping other objects visually

### UI Styles: List Boxes

• Style – listbox

• String – cell array of each possible choice

• Value – currently highlighted selection

• Callback – function executed when an item is selected

• Used for selecting options when their names and numbers may change

### UI Styles: Pop Up Menus

• String – cell array of each possible choice

• Value – currently selected option

• Callback – function executed when an item is selected

• Used for selecting options in a more compact manner

### Useful Functions

• set – change something’s properties

• get – find out what something’s properties

• guidata – attach data to/pull data from GUI