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

Matlab callbacks for Java events in R2014a

R2014a changed the way in which Java objects expose events as Matlab callbacks.

Read More »
May 8, 2014 16 Comments

Animated busy (spinning) icon

An animated spinning icon label can easily be embedded in Matlab GUI.

Read More »
April 16, 2014 51 Comments

Transparent uipanels

Matlab uipanels can be made transparent, for very useful effects.

Read More »
April 9, 2014 17 Comments

uicontextmenu performance

Matlab uicontextmenus are not automatically deleted with their associated objects, leading to leaks and slow-downs.

Read More »
April 2, 2014 5 Comments

JSON-Matlab integration

JSON can easily be integrated in Matlab to achieve cross-platform standard API.

Read More »
March 26, 2014 18 Comments

Undocumented feature list

A list of undocumented MATLAB features can be retrieved. Here’s how…

Read More »
March 19, 2014 4 Comments

Explicit multi-threading in Matlab part 4

Matlab performance can be improved by employing timer objects and spawning external processes.

Read More »
March 12, 2014 30 Comments

Explicit multi-threading in Matlab part 3

Matlab performance can be improved by employing POSIX threads in C/C++ code.

Read More »
March 5, 2014 4 Comments

Explicit multi-threading in Matlab part 2

Matlab performance can be improved by employing .Net (C#, VB, F# or C++) threads.

Read More »
February 26, 2014 No Comments

Explicit multi-threading in Matlab part 1

Explicit multi-threading can be achieved in Matlab by a variety of simple means.

Read More »
February 19, 2014 31 Comments

Improving Simulink performance

Simulink simulation run-time performance can be improved by orders of magnitude by following some simple steps.

Read More »
February 12, 2014 3 Comments

Undocumented button highlighting

Matlab button uicontrols can easily be highlighted by simply setting their Value property.

Read More »
February 5, 2014 1 Comment

Assessing Java object size in Matlab

Java object sizes are not reported by Matlab, but we can still estimate them using two free external utilities.

Read More »
January 29, 2014 No Comments

Serializing/deserializing Matlab data

Matlab does not provide a documented manner to serialize data into a byte stream, but we can do this with some undocumented functionality.

Read More »
January 22, 2014 22 Comments

MathWorks blogs facelift

MathWorks has just released a new look-&-feel for their blogs section.

Read More »
January 12, 2014 1 Comment

2013 perspective & plans for 2014

2013 has seen a continued steady growth in website content and readership. This post takes an overview of past achievements and future plans.

Read More »
January 8, 2014 1 Comment

Accessing private object properties

Private properties of Matlab class objects can be accessed (read and write) using some undocumented techniques.

Read More »
December 18, 2013 2 Comments

Class object creation performance

Performance aspects of Matlab class object creation are discussed, with specific suggestions.

Read More »
December 11, 2013 8 Comments

Plotly graphs

Plotly charts can be created and customized in Matlab.

Read More »
December 4, 2013 4 Comments

sprintfc – undocumented helper function

The built-in sprintfc function can be used to quickly generate a cell-array of formatted strings.

Read More »
November 27, 2013 5 Comments

Performance: accessing handle properties

Handle object property access (get/set) performance can be significantly improved using dot-notation.

Read More »
November 20, 2013 13 Comments

Listbox layout customization

Matlab’s listbox layout can be modified to display multiple item columns and different inter-cell margins.

Read More »
November 13, 2013 14 Comments

Another Command Window text color hack

Matlab’s fprintf command has an undocumented hack to display orange-colored text.

Read More »
November 6, 2013 6 Comments

Matlab numerical gotchas

Matlab includes some numerical gotchas that we should be careful to avoid…

Read More »
October 30, 2013 9 Comments

Draggable plot data-tips

Matlab’s standard plot data-tips can be customized to enable dragging, without being limitted to be adjacent to their data-point.

Read More »
October 23, 2013 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 (9 hours 40 minutes ago): Yair, this works wonderfully! I can’t thank you enough!
  • Collin (2 days 13 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 (3 days 5 hours ago): Collin, What version of MATLAB are you using?
  • Collin (8 days 11 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 (10 days 6 hours ago): FFT-based convolution is circular whereas MATLAB’s conv functions have several options (‘valid’, ‘same’, ‘full’) but unfortunately not...
  • Seth (10 days 9 hours ago): No luck with removing the space.
  • Seth (10 days 11 hours ago): The javascript code works fine running the application from the 2019b desktop version and the 2016b deployed version.
  • Seth (10 days 11 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 11 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 11 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 12 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 12 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 14 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 12 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 12 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