MATLAB Answers

Reduce the line height for an annotation textbox

24 views (last 30 days)
giannit on 28 Apr 2020
Commented: Ameer Hamza on 1 May 2020
The following code
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{15}7,987,157', '\fontsize{10}+8,829'},'FontName','Consolas')
creates this box
One can notice that the third string is farther than the first one from the the middle one.
Moreover, by increasing the fontsize of the middle string, the last one will go even far away. Also the first string will go a little far away.
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{25}7,987,157', '\fontsize{10}+8,829'},'FontName','Consolas')
Is there a way to reduce the line height or, similarly, to reduce the distance between the strings?


Show 5 older comments
giannit on 29 Apr 2020
on windows 10.
I just tried on matlab online, the simple 1 line command of the question works without adding extra space, but when I add more sofisticated stuff, other things start to not work properly. I think this is due to limitation of matlab online
Ameer Hamza
Ameer Hamza on 29 Apr 2020
I guess these functions were never intended for sophisticated text formatting with multi-line text. That is why there are some issues if the command becomes complex.
Adam Danz
Adam Danz on 29 Apr 2020
The problem is reproduced in r2020a using Windows 7. It appears that the space between lines n and n+1 is based on the fontsize that is in line n.
Note that the default verticalAlignment of the annotation is "top" but that only affects the entire text box as a whole, not each component within the textbox.

Sign in to comment.

Accepted Answer

giannit on 1 May 2020
A workaround is simply to move the fontsize command of the last string to the middle string, that is
annotation('textbox','String',{'\fontsize{10}TEST', '\fontsize{25}7,987,157\fontsize{10}', '+8,829'},'FontName','Consolas')

More Answers (0)


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!