Undocumented Matlab
  • SERVICES
    • Consulting
    • Development
    • Training
    • Gallery
    • Testimonials
  • PRODUCTS
    • IQML: IQFeed-Matlab connector
    • IB-Matlab: InteractiveBrokers-Matlab connector
    • EODML: EODHistoricalData-Matlab connector
    • Webinars
  • BOOKS
    • Secrets of MATLAB-Java Programming
    • Accelerating MATLAB Performance
    • MATLAB Succinctly
  • ARTICLES
  • ABOUT
    • Policies
  • CONTACT
  • SERVICES
    • Consulting
    • Development
    • Training
    • Gallery
    • Testimonials
  • PRODUCTS
    • IQML: IQFeed-Matlab connector
    • IB-Matlab: InteractiveBrokers-Matlab connector
    • EODML: EODHistoricalData-Matlab connector
    • Webinars
  • BOOKS
    • Secrets of MATLAB-Java Programming
    • Accelerating MATLAB Performance
    • MATLAB Succinctly
  • ARTICLES
  • ABOUT
    • Policies
  • CONTACT
Technical articles

Technical articles

Accessing the Matlab Editor

The Matlab Editor can be accessed programmatically, for a wide variety of possible uses – this article shows how.

Read More »
October 19, 2009 50 Comments

Updating speaker sound volume

Matlab enables setting the speaker volume via documented Java calls

Read More »
October 15, 2009 9 Comments

Performance: scatter vs. line

In many circumstances, the line function can generate visually-identical plots as the scatter function, much faster

Read More »
October 14, 2009 4 Comments

Undocumented scatter plot behavior

The scatter plot function has an undocumented behavior when plotting more than 100 points: it returns a single unified patch object handle, rather than a patch handle for each specific point as it returns with 100 or less points.

Read More »
October 12, 2009 18 Comments

uicontrol side-effect: removing figure toolbar

Matlab’s built-in uicontrol function has a side-effect of removing the figure toolbar. This was undocumented until lately. This article describes the side-effect behavior and how to fix it.

Read More »
October 7, 2009 No Comments

Undocumented mouse pointer functions

Matlab contains several well-documented functions and properties for the mouse pointer. However, some very-useful functions have remained undocumented and unsupported. This post details their usage.

Read More »
September 24, 2009 33 Comments

Detecting window focus events

Matlab does not have any documented method to detect window focus events (gain/loss). This article describes an undocumented way to detect such events.

Read More »
September 9, 2009 41 Comments

R2009b keyboard bindings

The new Matlab release R2009b includes the ability to customize keyboard bindings for the editor and Command Window. However, there are still some uses for the EditorMacro utility and its variants.

Read More »
September 6, 2009 No Comments

Figure toolbar customizations

Matlab’s toolbars can be customized using a combination of undocumented Matlab and Java hacks. This article describes how to customize the Matlab figure toolbar.

Read More »
September 2, 2009 24 Comments

Figure toolbar components

Matlab’s toolbars can be customized using a combination of undocumented Matlab and Java hacks. This article describes how to access existing toolbar icons and how to add non-button toolbar components.

Read More »
August 27, 2009 50 Comments

EditorMacro v2 – setting Command Window key-bindings

The EditorMacro utility was extended to support built-in Matlab Editor and Command-Window actions and key-bindings. This post describes the changes and the implementation details.

Read More »
August 20, 2009 4 Comments

Setting listbox mouse actions

Matlab listbox uicontrol can be modified to detect mouse events for right-click context menus, dynamic tooltips etc.

Read More »
August 13, 2009 34 Comments

Context-Sensitive Help

Matlab has a hidden/unsupported built-in mechanism for easy implementation of context-sensitive help

Read More »
August 5, 2009 10 Comments

Setting status-bar components

Matlab status-bars are Java containers in which we can add GUI controls such as progress-bars, not just simple text labels

Read More »
July 30, 2009 20 Comments

Setting status-bar text

The Matlab desktop and figure windows have a usable statusbar which can only be set using undocumented methods. This post shows how to set the status-bar text.

Read More »
July 23, 2009 64 Comments

Non-textual editor actions

The UIINSPECT utility can be used to expand EditorMacro capabilities to non-text-insertion actions. This is how:

Read More »
July 17, 2009 10 Comments

BlinkDagger – the end?

In his latest post on BlinkDagger, Quan Quach announced that the BlinkDagger blog will be frozen following co-author Daniel Sutoyo’s hiring by The MathWorks and the continuous strain of maintaining the blog single-handedly. This is sad news indeed for the Matlab user community. Over the past few years, BlinkDagger has

Read More »
July 8, 2009 2 Comments

EditorMacro – assign a keyboard macro in the Matlab editor

EditorMacro is a new utility that enables setting keyboard macros in the Matlab editor. this post details its inner workings.

Read More »
July 1, 2009 24 Comments

Setting the Matlab desktop layout programmatically

The Matlab desktop enables saving and switching layouts using the main menu. This post shows how to do so programmatically.

Read More »
June 24, 2009 6 Comments

Changing system preferences programmatically

Matlab user/system preferences can be changed programmatically, from within your Matlab application or from the Matlab desktop command prompt. This post details how.

Read More »
June 17, 2009 17 Comments

GUIDE customization

Matlab’s GUI Design Editor (GUIDE) has several interesting undocumented features. This post describes how to customize GUIDE rulers.

Read More »
June 10, 2009 8 Comments

Legend '-DynamicLegend' semi-documented feature

The built-in Matlab legend function has a very useful semi-documented feature for automatic dynamic update, which is explained here.

Read More »
June 4, 2009 21 Comments

Spicing up Matlab uicontrol tooltips

Matlab uicontrol tooltips can be spiced-up using HTML and CSS, including fonts, colors, tables and images

Read More »
May 27, 2009 20 Comments

tic / toc – undocumented option

Matlab’s built-in tic/toc functions have an undocumented option enabling multiple nested clockings

Read More »
May 22, 2009 15 Comments

cprintf – display formatted color text in the Command Window

cprintf is a utility that utilized undocumented Matlab desktop functionalities to display color and underline-styled formatted text in the Command Window

Read More »
May 13, 2009 55 Comments
Page1 Page2 Page3 Page4 Page5 Page6 Page7 Page8 Page9 Page10 Page11 Page12 Page13 Page14 Page15 Page16 Page17
Print This Page Print This Page
Useful links
  •  Email Yair Altman
  •  Subscribe to new posts (feed)
  •  Subscribe to new posts (reader)
  •  Subscribe to comments (feed)
 
Accelerating MATLAB Performance book
Recent Posts

Speeding-up builtin Matlab functions – part 3

Improving graphics interactivity

Interesting Matlab puzzle – analysis

Interesting Matlab puzzle

Undocumented plot marker types

Matlab toolstrip – part 9 (popup figures)

Matlab toolstrip – part 8 (galleries)

Matlab toolstrip – part 7 (selection controls)

Matlab toolstrip – part 6 (complex controls)

Matlab toolstrip – part 5 (icons)

Matlab toolstrip – part 4 (control customization)

Reverting axes controls in figure toolbar

Matlab toolstrip – part 3 (basic customization)

Matlab toolstrip – part 2 (ToolGroup App)

Matlab toolstrip – part 1

Categories
  • Desktop (45)
  • Figure window (59)
  • Guest bloggers (65)
  • GUI (165)
  • Handle graphics (84)
  • Hidden property (42)
  • Icons (15)
  • Java (174)
  • Listeners (22)
  • Memory (16)
  • Mex (13)
  • Presumed future risk (394)
    • High risk of breaking in future versions (100)
    • Low risk of breaking in future versions (160)
    • Medium risk of breaking in future versions (136)
  • Public presentation (6)
  • Semi-documented feature (10)
  • Semi-documented function (35)
  • Stock Matlab function (140)
  • Toolbox (10)
  • UI controls (52)
  • Uncategorized (13)
  • Undocumented feature (217)
  • Undocumented function (37)
Tags
ActiveX (6) AppDesigner (9) Callbacks (31) Compiler (10) Desktop (38) Donn Shull (10) Editor (8) Figure (19) FindJObj (27) GUI (141) GUIDE (8) Handle graphics (78) HG2 (34) Hidden property (51) HTML (26) Icons (9) Internal component (39) Java (178) JavaFrame (20) JIDE (19) JMI (8) Listener (17) Malcolm Lidierth (8) MCOS (11) Memory (13) Menubar (9) Mex (14) Optical illusion (11) Performance (78) Profiler (9) Pure Matlab (187) schema (7) schema.class (8) schema.prop (18) Semi-documented feature (6) Semi-documented function (33) Toolbar (14) Toolstrip (13) uicontrol (37) uifigure (8) UIInspect (12) uitools (20) Undocumented feature (187) Undocumented function (37) Undocumented property (20)
Recent Comments
  • Leuze (16 days 21 hours ago): Hello, I would like to add a new object into SLDD and display columns according to my object properties <>
  • Eric Delgado (45 days 23 hours ago): Hey Yair, I think your site is the right place to share that I wrote ccTools, a lib that allows a lot of customizations of Matlab built-in web components (such as uifigure,...
  • Eric Delgado (45 days 23 hours ago): Hey guys, first of all, thanks to @Yair, your site saved me a lot of times! 🙂 That’s why I am sharing that I wrote m2mlapp (*.m => *.mlapp) file conversion, that...
  • François (62 days 21 hours ago): more than 10 years later it helps me after struggling few hours, so thanks you very much !
  • Yair Altman (63 days 19 hours ago): I am not familiar with a universal catch-all tab-completion mechanism for all functions, and it also doesn’t make much sense to me, because different functions use...
  • Arye (64 days 13 hours ago): hi, is there a universal functionSignature.json file that will allow my to get the function hints when opening brackets of my funcs? something that automaticly recognize my function...
  • Sunham (67 days 8 hours ago): This is an old article, but the issue persists even in 2023. 2023a: z = mat2cell(1:1e6,1,repmat(1,1,1e 6)); f = @() cellfun(‘isempty’, z); g = @() cellfun(@isempty,z);...
  • Yair Altman (76 days 22 hours ago): Robot only runs when you tell it to run a command such as keyPress. If you don’t tell it to run a command, it uses no CPU, so there’s no need to remove the Robot...
  • Eric (77 days 9 hours ago): Hey @Kevin, can you share your code about create group of figures in the AppContainer? The container of multiples uifigures could be an amazing improvement over AppDesigner and its...
  • Elsa Smith (78 days 0 hours ago): I recently used java.awt.Robot to perform GUI testing on MATLAB and found it to be an extremely easy and useful way to control mouse movements.
  • Elsa Smith (78 days 0 hours ago): I’m suspecting that the slow performance of my GUI may be due to the use of java.awt.Robot. Is there a way to cancel/stop/remove the robot after it has been created, or is...
  • Michelle Kline (78 days 17 hours ago): *edit* tip about fopen(), not about fwrite(). ‘Wb’ vs. ‘wb’
  • Michelle Kline (78 days 17 hours ago): Thank you, Yair! With this previously-unknown-to-me tip about fwrite() performance, you have saved me literally hours of processing time. Michelle Kline Department of...
  • Alessandro Beda (91 days 5 hours ago): I found what I think is a bug related to this (tested in R2022 and R2023a). If I add a “ButtonDownFcn” to the plots (see example below), then the modified...
  • Nicholas (92 days 20 hours ago): Yair, Changing the desktop help options did not solve the issue. Though, it’s unclear how I could change these options in the Runtime, if that’s what you meant? I should...
Contact us
Captcha image for Custom Contact Forms plugin. You must type the numbers shown in the image
Undocumented Matlab © 2009 - Yair Altman
This website and Octahedron Ltd. are not affiliated with The MathWorks Inc.; MATLAB® is a registered trademark of The MathWorks Inc.
Scroll to top