How can I modify figure's property inspector elements through code?

47 views (last 30 days)
I've a set of timeseries the I received from a SIMULINK model, then I use the subplit funcitonality to show the results using the following code %Powers Plot below
then I would have to open property inspector in order to modify the FontName, some of the xaxis and yaxis limits as in here:
Q1 : Can I find a way to automatically adjust the FontName, Axes limits by adjusting the code below???
If not, is there a way to set the defaults parameter for the figure inspector properties, so when the figure is printed it would use these values.
I've seen some documnetation, answers where I can set the limits, but for a one-plot figure, in my case I am using subplot, I want to be able to adjust limits for each subplot.
Also, note I am using timeseries plot, which is not straight forward as just plot(x,y)
Code:
% Powers Plot
subplot(4,1,1 )
Power_Load.Name = 'Demand Power';
loadpowerplot= plot(Power_Load);
ylabel(' Demand Power (W)')
xlabel(' Time (h) ')
xaxisHours;
subplot(4,1,2 )
Power_PV.Name = 'Solar Power ';
plot(Power_PV)
ylabel(' Solar Power (W) ')
xlabel(' Time (h) ')
xaxisHours;
subplot(4,1,3 )
Power_battery.Name = ' Battery Power (W) ';
plot(Power_battery)
ylabel(' Battery Power (W) ')
xlabel(' Time (h) ')
xaxisHours;
subplot(4,1,4 )
Power_SC.Name = ' Supercapacitor Power ';
plot(Power_SC)
ylabel(' Supercapacitor Power (W)) ')
xlabel(' Time (h) ')
xaxisHours;
PS: the xaxisHours is a code I made that will make the x axis values from seconds to hours and it's as follows:
xaxisHours.m
grid on
xticks(0:60*60:24*60*60)
xticklabels({'0','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23' })
  4 Comments
Mohamed Numair
Mohamed Numair on 28 May 2021
Edited: Mohamed Numair on 28 May 2021
@Jonas Thank you so much, that should help.
@z8080 I just say Jonas' comment just now, because I got an email notificaiton for your comment. Also, it doesn't show as an Answer so my question looked like it had 0 Answers all along.

Sign in to comment.

Accepted Answer

Jonas
Jonas on 28 May 2021
Edited: Jonas on 28 May 2021
you can set the Font by specifying it in the label commands, e.g.
ylabel('y-axis','FontName','This is the name of your font')
you can specify the ylimits by calling in every subplot after plotting by calling
ylim([lower upper])
To change all font names after all plotting was done you can also search for all objects with a fontName property in the current figure by
objs=findall(gcf,'-property','FontName')
and then setting it to the font name you want
set(objs,'FontName','YourFontName')

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!