This has been a very useful submission for me. One minor improvement that I could suggest is an option to recalibrate the x-axis and y-axis independently. I think that would be great for plots with multiple y axes.
Thanks for this excellent tool. I wish I had discovered it sooner. I have been writing custom quadratic programs to fit polynomials with various constraints (monotonicity, concavity, endpoint slopes, etc.) for years, but it seemed like every time required a slight variation on what I had done previously. This tool captures all of those things I was doing (and many more).
Figure 1 has additional space at the top and right in between panel 1 and panel 2 compared to panels 3 and 4 in figure 2. I just reinstalled v1.8 and removed all other versions from my path as a precaution. I am using R2010B.
We don't appear to be able to upload files or else I would include screenshots as well.
I need to retract my "correction" of lines 133-134 of Panel.m. However, I believe I am now closer to an answer. In normalized units, the border/title area is excluded from the control area. You have to compensate for this when you specify the width and height to obj.ShowSelectedChild. I can provide code, if interested.
I wanted to follow up on my previous comment. First, I believe lines 133-134 of Panel.m should be:
x0 = border;
y0 = border;
Also, the issue with the normalized panels appears to be that the uipanel reserves some space at the top of the panel such that a normalized position of [0 0 1 1] does not fully cover the area returned by getpixelpostion. I haven't figured out yet how to set/get what the "normalized" area actually is relative to the getpixelposition area.
@Sohil - You can only specify top and bottom TabPosition in GLT.
If you are using R2014b then you can now make use of the fully supported uitab and uitabgroup which allow you to set the TabLocation property to top, bottom, left or right.