File Exchange

image thumbnail


version (671 KB) by Gautam Vallabha
EasyGUI ver 1.0 -- Build GUIs quickly and easily in MATLAB


Updated 01 Sep 2016

View Version History

View License

Editor's Note: This file was selected as MATLAB Central Pick of the Week

EasyGUI allows you to quickly create a graphical "front-end" for an m-file so that users can interactively manipulate parameters. It provides:
* A set of “widgets” (UI controls) with a simple programming interface
* Automatic layout of the widgets
* An intuitive way to combine a GUI with MATLAB plotting and visualization
* An intuitive way to share data between GUIs (e.g., a dialog window and the main GUI)

EasyGUI also comes with a widget for analog data acquisition (requires the Data Acquisition Toolbox). This allows you to easily create a GUI to:

* Acquire data (allowing the user to start and stop acquisition, and set sampling rate, channels, etc.)
* Analyze the data (using parameters that can be set using the GUI), and
* Plot the results using familiar MATLAB commands

NOTE: EasyGUI does not generate the GUI for you. Rather, it makes it easy to add UI controls to an m-file, get and set the values of those controls, and wait for user input.

EasyGUI is written using MATLAB Classes and requires at least R2008a. For more information object-oriented programming with MATLAB, see:

Cite As

Gautam Vallabha (2021). EasyGUI (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (15)

Vadim Frolov

Here is the version that works in post R2014b releases:

M. Welters

Dear readers,

please note that the update on 01 September 2016 only replaced the license.txt file within the zip. This means that autogui / EasyGui still does not work under 2014b or later.

CU Chan

Is there anyone able to fix this nice package for Matlab newer than 2014a?


This has been very helpful for us, but unfortunately 2014b breaks it. I'm looking into the errors but worried they may be extensive.

Andrew Metcalf

I am having a problem setting the TitlePosition to anything but 'lefttop' on a It throws an error on line 65 of borderedwidget.m.

Any ideas on how to fix this? Thanks.

Bekir Sait

Gautam Vallabha

Muthu, it is possible to use the widgets without blocking MATLAB. See examples/autodemo2.m and autodemo3.m

Muthu Annamalai

This is a very handy tool; thanks for the excellent demos as well.

Is it possible to use the gui.autogui classes without the busy-waiting loop for monitoring signals? If this is possible, then I can use GUI classes with callbacks, and not block MATLAB session.

Gautam Vallabha

J Fields: You can use MATLAB Compiler to take GUIs created with EasyGUI and compile them into standalone programs:

J Fields

Can gui's designed with this tool be compiled into standalone programs?

zhu longchao


Michael Jablecki

This is wonderful. I only wish for more of it - more classes, more features, etc.

Emanuele Ruffaldi

Amazing tool for simple gui. The difference between while loop and the callbacks is that the gui is not blocked, relevant when a gui open other gui for additional operations

In addition it could be good to have sliders with integer steps, and also selection menu that return a value associated to the entity label (solvable using a java Hashtable)

Dani Hak

great tool, very easy to use and and well documented.
one problem i encountered is the the ui's don't refresh fast enough when i used them as output function for fminbnd, so just added 0.01 sec delay and that solved the problem.

Y Mehta

Very useful tool, sp for situations where there are a number of inputs that produce a limited number of outputs.

MATLAB Release Compatibility
Created with R2008a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!