Stem plot with minimal spaces between lines

조회 수: 4 (최근 30일)
shane watson
shane watson 2019년 12월 10일
댓글: Adam Danz 2019년 12월 14일
Hello,
I'm using stem plot to show my data here is my code. However, my question is there are spaces between two stem lines, I wanted to fill the space with same stem lines, can someone guide me regarding this. e.g., stem plots 5 and 5 but I really need to insert some more line between these vaules to fill the space and the total array values remain 24 same. Thanks in advace.
t=[5 5 5 5 5 5 6 2 2 2 2 4 4 4 4 4 4 4 1 1 6 6 6 6];
stem(t,'-s','MarkerFaceColor',[0 1 0],'LineWidth',1.5);
hold on
  댓글 수: 4
Adam Danz
Adam Danz 2019년 12월 11일
Done. Let me know if there are any other loose ends.
shane watson
shane watson 2019년 12월 11일
@Adam, Fantastic, you're great. The Only things that make me in trouble is now the legend problem, I have three data 1, data 2, data 3. 'data 1' is simple plot, 'data 2' is filled with color and polkadots and '3' is filled with color only. So the legend should show this way, but in my case legend show the data but in data 2 only shows symbol and in data 3 shows the color of data 2. Kindly see image it illustrates the problem.Legend.PNG

댓글을 달려면 로그인하십시오.

채택된 답변

Adam Danz
Adam Danz 2019년 12월 11일
"The Only things that make me in trouble is now the legend problem, I have three data 1, data 2, data 3."
Method 1: turn off IconDisplayStyle
Two steps:
1) turn off the icon display of the polkadot handle
2) call legend after you to step 1.
h = plot(inX,inY,'k.','MarkerSize',4,'MarkerFaceColor','k'); % Plot polkadots
h.Annotation.LegendInformation.IconDisplayStyle = 'off' % Turn off legend display for polkadots
legend(. . .) % Create the legend
Method 2: Specify handles in legend
Two steps:
1) get the handles to all objects you want in the legend
2) Create the legend at the end and provide those handles as input.
hold on
h1 = plot(. . ., 'DisplayName', 'Legend1'); % plot stuff that should appear on legend
h2 = plot(. . ., 'DisplayName', 'Legend2'); % plot more stuff that goes on the legend
h3 = plot(. . . ); % Polkadots
% at the end of the plotting stuff
legend([h1,h2])
  댓글 수: 8
shane watson
shane watson 2019년 12월 13일
You are real mentor @Adam Danz, I will keep you in my loop for the help. (I sent you a message can you respond to that).
Thank you
Adam Danz
Adam Danz 2019년 12월 14일
Thank you, Shane; glad I can help out!
Just FYI, I didn't receive a message, in case it's important.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Legend에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by