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

Undocumented Profiler options part 3

An undocumented feature of the Matlab Profiler can report call history timeline – part 3 of series.

Read More »
September 26, 2012 4 Comments

Undocumented Profiler options part 2

Several undocumented features of the Matlab Profiler can make it much more useful – part 2 of series.

Read More »
September 19, 2012 1 Comment

Matlab installation take 2

A list of suggested config changes to the default Matlab installation is detailed.

Read More »
September 12, 2012 32 Comments

File deletion memory leaks, performance

Matlab’s delete function leaks memory and is also slower than the equivalent Java function.

Read More »
September 5, 2012 8 Comments

Pause for the better

Java’s thread sleep() function is much more accurate than Matlab’s pause() function.

Read More »
August 29, 2012 17 Comments

Speeding up compiled apps startup

The MCR_CACHE_ROOT environment variable can reportedly help to speed-up deployed Matlab executables.

Read More »
August 22, 2012 32 Comments

ScreenCapture utility

The ScreenCapture utility uses purely-documented Matlab for capturing a screen region as an image from within Matlab.

Read More »
August 15, 2012 35 Comments

Bold color text in the Command Window

Matlab Command Window text can be formatted *bold* since R2011b.

Read More »
August 8, 2012 2 Comments

xlswrite for Mac, Linux

Several Matlab utilities enable reading/writing spreadsheet data (including XLS files) in Macs, Linux.

Read More »
August 2, 2012 9 Comments

Splash window for deployed applications

Deployed (compiled) Matlab applications take a long time to load. I present a splash window that loads immadiately, solving this problem.

Read More »
July 26, 2012 No Comments

Waiting for asynchronous events

The Matlab waitfor function can be used to wait for asynchronous Java/ActiveX events, as well as with timeouts.

Read More »
July 18, 2012 33 Comments

Trapping warnings efficiently

warnings can be trapped in a try-catch block just like regular errors. This articles explains how.

Read More »
July 11, 2012 12 Comments

Using Groovy in Matlab

Groovy code can seamlessly be run from within Matlab.

Read More »
July 4, 2012 8 Comments

Multi-line uitable column headers

Matlab uitables can present long column headers in multiple lines, for improved readability.

Read More »
June 27, 2012 21 Comments

The Java import directive

The import function can be used to clarify Java code used in Matlab.

Read More »
June 13, 2012 No Comments

Undocumented scatter plot jitter

Matlab’s scatter plot can automatically jitter data to enable better visualization of distribution density.

Read More »
June 6, 2012 4 Comments

Internal Matlab memory optimizations

Copy-on-write and in-place data manipulations are very useful Matlab performance improvement techniques.

Read More »
May 30, 2012 7 Comments

Array resizing performance

Several alternatives are explored for dynamic array growth performance in Matlab loops.

Read More »
May 23, 2012 7 Comments

Preallocation performance

Preallocation is a standard Matlab speedup technique. Still, it has several undocumented aspects.

Read More »
May 16, 2012 30 Comments

Customizing menu items part 3

Matlab menu items can easily display custom icons, using just a tiny bit of Java magic powder.

Read More »
May 9, 2012 39 Comments

Customizing menu items part 2

Matlab menu items can be customized in a variety of useful ways using their underlying Java object.

Read More »
May 2, 2012 14 Comments

Customizing menu items part 1

Matlab menus can be customized in a variety of undocumented manners – first article of a series.

Read More »
April 25, 2012 6 Comments

Setting axes tick labels format

Matlab plot axes ticks can be customized in a way that will automatically update whenever the tick values change.

Read More »
April 18, 2012 18 Comments

Specialized Matlab plots

The new MathWorks Plot Gallery provides access to some plotting examples on the File Exchange. Numerous others are available, extending the customizability of Matlab graphics.

Read More »
April 11, 2012 5 Comments

Spy Easter egg take 2

The default spy Easter-egg image in the spy function has recently changed.

Read More »
April 4, 2012 6 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 (email)
  •  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
  • Nicholas (1 hour 23 minutes ago): Yair, this works wonderfully! I can’t thank you enough!
  • Collin (2 days 4 hours ago): Seth Good point, I am using 2022b, mathworks seems to have started using CEF browsers from 2019a, best I can tell. take a look at the package com.mathworks.toolbox.matla...
  • Seth (2 days 20 hours ago): Collin, What version of MATLAB are you using?
  • Collin (8 days 3 hours ago): Seth, I have had some success executing javascript that requires no return value by executing it directly (sort of) on the org.cef.browser.CefBrowser that a...
  • Coo Coo (9 days 22 hours ago): FFT-based convolution is circular whereas MATLAB’s conv functions have several options (‘valid’, ‘same’, ‘full’) but unfortunately not...
  • Seth (10 days 1 hour ago): No luck with removing the space.
  • Seth (10 days 2 hours ago): The javascript code works fine running the application from the 2019b desktop version and the 2016b deployed version.
  • Seth (10 days 2 hours ago): I have been using this browser functionality in 2016b because it works fully in deployed applications in that version. However, because of Java 7 being flagged as a security risk, I...
  • Yair Altman (10 days 2 hours ago): I’ve never tested javascript callbacks, but perhaps you should try removing the extra space after the “matlab:” protocol specifier. Does it make any difference?
  • Seth (10 days 3 hours ago): I have been using this functionality in 2016b since it works in deployed applications and have not had a reason to need to upgrade but with java 7 being flagged as a security risk I am...
  • KEVIN (30 days 4 hours ago): I apologize, I intended my response to fall under ‘T’ but did not seem to work. I was referring to the bit of code posted by ‘T’ regarding the toolgroup and...
  • Yair Altman (30 days 4 hours ago): It is not clear from your comment which code exactly you are referring to and what you see differently in 19b vs. 20b, so I cannot assist with your specific query. In general I...
  • Kevin (31 days 6 hours ago): Any ideas on why this bit of code looks fine in say R2020b but produces an incorrect image in R2019b? I’m not seeing any error printouts that suggest it’s unhappy with the...
  • Yair Altman (50 days 4 hours ago): titleStr = char(hFig.Name); if strcmpi(hFig.NumberTitle,'on') prefix = ['Figure ' num2str(hFig.Number)]; if ~isempty(titleStr) titleStr = [prefix ': ' titleStr]; else titleStr...
  • T (56 days 4 hours ago): Mathworks has indeed been migrating its Java-based apps (like the PIDtuner, as you mentioned) to html-based ones (uifigures) so that they can be used in Matlab online. If you drill a bit...
Contact us
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