change the lines' widths in a stem plot, without changing the markers edges widths?

19 visualizzazioni (ultimi 30 giorni)
Hi, how can I change the lines' widths in a stem plot, without changing the markers edges' widths?
(I just want to modifiy the lines's widths and not the markers edges' thickness, either)
Example:
x = 1:10;
y = [2 5 4 1 2 4 1 8 1 2];
stem(x,y,'LineWidth',0.1,'MarkerSize',15,'MarkerFaceColor','g')
and I get this:
Instead if I change the LineWidth property as:
stem(x,y,'LineWidth',3,'MarkerSize',15,'MarkerFaceColor','g')
I get this:

Risposta accettata

Ameer Hamza
Ameer Hamza il 21 Ott 2020
Modificato: Ameer Hamza il 21 Ott 2020
You will need to use a combination of stem and scatter to get such a result. Check the following code
x = 1:10;
y = rand(1,10);
subplot(3,1,1)
stem(x,y,'LineWidth',2,'MarkerSize',15,'MarkerFaceColor','g')
subplot(3,1,2)
stem(x,y,'LineWidth',2,'MarkerSize',15,'MarkerFaceColor','g', 'MarkerEdgeColor', 'none')
subplot(3,1,3)
hold on
stem(x, y, 'LineWidth', 2, 'Marker', 'none')
scatter(x, y, 'filled', 'MarkerEdgeColor', 'b', 'MarkerFaceColor', 'g', 'SizeData', 200, 'LineWidth', 0.5)

Più risposte (2)

Adam Danz
Adam Danz il 21 Ott 2020
Modificato: Adam Danz il 21 Ott 2020
Method 1: Set markers separately
x = 1:10;
y = [2 5 4 1 2 4 1 8 1 2];
figure()
stem(x,y,'b-','LineWidth',3,'Marker','none')
hold on
plot(x,y,'bo','MarkerSize',15,'MarkerFaceColor','g')
Method 2: Remove edges from marker
figure()
stem(x,y,'b-','LineWidth',3,'MarkerSize',15,'MarkerFaceColor','g','MarkerEdgeColor','none')

Chenguang Yan
Chenguang Yan il 21 Ott 2020
You can change the value of h2.SizeData to adapt to h1.LineWidth
close all
x = 1:10;
y = [2 5 4 1 2 4 1 8 1 2];
h1 = stem(x,y,'LineWidth',3,'MarkerSize',15,'MarkerFaceColor','g','MarkerEdgeColor','g');
hold on
h2 = scatter(x,y,'LineWidth',0.1,"SizeData",300,"MarkerEdgeColor",'#0072BD');

Categorie

Scopri di più su Line Plots in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by