how to change the Line width in stem

17 views (last 30 days)
each time i want to use stem option, i see just circles without lines and i need to change the line width from 0.5 to 1
%
n=0:4;
x=2*n;
stem(n,x);
in the figure i go to view>>property editor>> i click on the circle in the graph>> i change the line width from 0.5 to 1
and the lines apeares again
is there a way to change the default value of the line width to 1 without changing it each time. thanks for your help.
  2 Comments
Star Strider
Star Strider on 10 Dec 2016
Why not just do this?
n=0:4;
x=2*n;
stem(n,x, 'LineWidth',1)
fouad fouad
fouad fouad on 10 Dec 2016
Edited: fouad fouad on 10 Dec 2016
i need to know the problem and solve it because i use "stem" a lot so i d'ont want to write it each time.
i hope to find a way to change the default value to its original state 1
thank you anyway

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 10 Dec 2016
I am not certain it is possible to set default (for example, groot) properties for stem plots without affecting all other line series plots. It does not seem so from the documentation.
You might contact MathWorks to see if such an option exists, but I would be surprised if it does.
If you use stem a lot and do not want to set the properties each time, consider creating your own stem function.
Example:
function hs = MyStem(x,y)
hs = stem(x,y, 'LineWidth',1)
end
Save it as a function file. Then just call your MyStem function as you otherwise would call stem. In this example, it also returns the handle if you want it to, so you can set the other parameters, such as axis labels, title, and others from your script.
  1 Comment
Mathieu NOE
Mathieu NOE on 7 Sep 2021
Good idea , can be expanded to even more parameters
% dummy data
x=0:4;
y=2*n;
% MyStem parameters
par.LineStyle = '--'; % Use one of these values: '-' |'--' | ':' | '-.' | 'none'.
par.LineWidth = 2;
par.Marker = '*';
par.MarkerSize = 8;
par.MarkerFaceColor = 'none';
hs = MyStem(x,y,par);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function hs = MyStem(x,y,par)
hs = stem(x,y, 'LineStyle',par.LineStyle, 'LineWidth',par.LineWidth, 'Marker',par.Marker, 'MarkerSize',par.MarkerSize, 'MarkerFaceColor',par.MarkerFaceColor)
end

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!