How can I change the DEFAULT line thickness on a control systems toolbox function (rlocus, bode, step, lsim, etc..)?

37 views (last 30 days)
I have been successful to change the default line thickness of all my plot() command by using the
set(0,'defaultlinelinewidth',2)
command on a startup.m file inside the ../toolbox/local directory.
However it looks like plots generated by the rlocus, step, slim, or any control system predefined function does not get affected by it.
It would be wonderful if I could add another line at startup.m that I can change the default line thickness, and font sizes for my control system graphs.
thank you for your help,
have only found a graphical way to do this but there is no options for linewidth

Answers (2)

shivam chaturvedi
shivam chaturvedi on 6 Apr 2020
Please use-set(findall(gcf,'type','line'),'linewidth',3);

Craig
Craig on 30 Apr 2013
Currently there is no documented programmatic way of doing this. I have created an enhancement request for this functionality.
Thanks, -craig
  1 Comment
Stefan Rickli
Stefan Rickli on 3 Jun 2017
Edited: Stefan Rickli on 3 Jun 2017
Had a look at the program code of the plotting function today, still not possible. :-(
For Bode-plots and the like, LineWidth is invisibly and unchangeably hard coded in the constructor of 'wavepack.wavestyle' which gets instantiated in controllib\graphics\@wavepack\@WaveStyleManager\makestyles.m
I've tried changing the for-loop to include a line
style(ct).LineWidth = 2
but it gets ignored unfortunately. If you set a breakpoint and type the command on the command line then it works...
I've also tried putting the class files elsewhere and masking the path as someone suggested in https://ch.mathworks.com/matlabcentral/newsreader/view_thread/138604 but this doesn't work either. So I'm stuck as well...

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!