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 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 (2020). EasyGUI (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (16)

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?

M. Welters

It is such a pity that autogui does not work unter R2014b anymore. Replacing "widthlimits" by "WidthLimits" and "heightlimits" by "HeightLimits" only removes the exceptions. Unfortunately the created GUI controls are invisible. I think this is related to this change:

Dear Mathworks engineers, you should be easily able to provide an autogui revision compatible to R2014b or later, aren't you?


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

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

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

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.

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?


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

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.


Updated license

Fixed a minor bug in EasyGUI/examples/sharedata_demo.m

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