Defining a simple function with text/string 'on'

1 view (last 30 days)
The Idea I'm thinking about really is simple and actually just for getting used to 'functions'
My Code is just based on:
ax = gca
ax.GridColor = [1, 1, 1];
set(ax,'color','k')
I can actually copy it in any script wher plots are included for getting a dark background. But it just strikes me as it would be easier for such things to have a simple command like grid on
So maybe you see where I am getting at: I want a function like
darkmode('Color',[1,1,1])
or simply
darkmode on
as short-cut for the code above.
It's not a huge reduction, but I could actually draw a lot of the mechanism.

Accepted Answer

David Hill
David Hill on 18 May 2021
function darkmode(a)
gca;
if a
ans.GridColor = [1, 1, 1];
set(ans,'color','k');
else
ans.GridColor = [.15,.15,.15];
set(ans,'color','w');
end
  1 Comment
Stephen23
Stephen23 on 21 May 2021
It is not considered good MATLAB practice to rely on ans like that. Better to obtain the output explicitly:
function darkmode(a)
axh = gca;
if a
axh.GridColor = [1, 1, 1];
set(axh,'color','k');
else
axh.GridColor = [.15,.15,.15];
set(axh,'color','w');
end

Sign in to comment.

More Answers (0)

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!