Is there any way to have grid on as default?

Hi!
Is there any way to make matlab plot all my figures (bode, step, simple plots etc.) with grids? I find it much better.
Thanks!

 Accepted Answer

set(groot,'defaultAxesXGrid','on')
set(groot,'defaultAxesYGrid','on')
figure,plot(1:10)

11 Comments

I tried as you suggest but every time i reopen matlab "grid on" it is not default anymore.
Have you tried putting it in startup.m?
Hi!
Thanks for the answer.
I did try it (including putting them in the startup file).
Does do the job for every "plot" command, which is helpful.
Thing is I will be happy to find a way to do that for every kind of figure (bode, step, etc.), which the solution above doesn't.
Thanks again!
Yeeees, it worked! I wasn't aware of startup.m, thank you.
Hi sorry, what does 'putting in startup.m' mean?
And how can i have minorgrids and minorticks by default?
@Marco Lepidi startup.m is a file that will be run when you start up Matlab. You can use the line below to open it (and create it if it doesn't exist).
edit(fullfile(userpath,'startup.m'))
See this doc page for more information.
Okay thank you very much. Do you know what i have to do to show minorgrids and minorticks by default?
Did you try putting the code in the answer in your startup file? What was the result?
It works for grid and ticks but not for minorgrids
sorry minorticks, but it doesn't work for minorgrid
I wanted to provide a second method that follows closely to @Mehmed Saad. I have a file called "startup.m" in my MATLAB paths. In the startup file I set the default for all of my plots for every session. I did this so that I don't have to remember to include the default plot syntax in every script.
My startup script has the following defaults:
set(0,'defaultaxesfontname','Helvetica')
set(0,'defaulttextfontname','Helvetica')
set(0,'defaultaxesfontsize',15)
set(0,'defaultaxesfontweight','Bold')
set(0,'defaulttextfontsize',15)
set(0,'defaulttextfontweight','Bold')
set(0,'DefaultLineLineWidth',1.2)
set(0,'DefaultFigureColor', 'white');
set(0,'defaultAxesXGrid','on')
set(0,'defaultAxesYGrid','on')

Sign in to comment.

More Answers (1)

TL;DR:
ctrlpref
Then "Style" tab > Show grids by default.
The Control Toolbox plot functions (bode, bodeplot, pzmap, step, stepplot, lsim, etc.) have a different set of configurations, so changing properties in groot, generally does not work.
If you want to change default settings (grids on/off, title font size, etc.) for these functions, you have to go to the "Control System and System Identification Toolbox Preferences" dialog window.

Categories

Community Treasure Hunt

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

Start Hunting!