# How do I change the marker size for a plot?

조회 수: 5,641(최근 30일)
john birt 2011년 4월 30일
댓글: Sreekar Sai Ranganathan 2021년 9월 7일
Im trying to set the marker size on a plot but having no luck, heres my code
this works fine
plot(
x , x^2,'-k*',...
x , x^3,'-ko',...
x , x^4,'-k' )
but when i try and set marker size it does not
plot(
x , x^2,'-k*',...
x , x^3,'-ko','MarkerSize',12,...
x , x^4,'-k' )
what do I need to do?

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

### 채택된 답변

Oleg Komarov 2011년 4월 30일
편집: MathWorks Support Team 2018년 11월 8일
You can change the marker size for a line plot by setting the “MarkerSize” property, either as a name-value pair or by accessing the “Line” object.
Name-value pair:
If you set this property as a name-value pair with the “plot” function, you must set it after all the x,y pairs. Name-value pair settings apply to all the plotted lines. To use a different marker size for each line, use separate “plot” commands. For example:
plot(x,x^2,'-k*', 'MarkerSize',20)
hold on
plot(x,x^3,'-ko','MarkerSize',12)
plot(x,x^4,'-k' )
hold off
Accessing the “Line” object:
Alternatively, return the “Line” objects as an output argument from the “plot” function and then set the “MarkerSize” property for each object separately.
p = plot(x,x^2,'-k*', x,x^3,'-ko', x,x^4,'-k' )
p(1).MarkerSize = 20;
p(2).MarkerSize = 12;
##### 댓글 수: 3표시숨기기 이전 댓글 수: 2
Sreekar Sai Ranganathan 2021년 9월 7일
Nvm, figured it out. The following works:
set(groot,'defaultLineMarkerSize',4);
Also see this answer, if anyone needs something similar.

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

### 추가 답변(3개)

Jan 2011년 4월 30일
plot(x, x^2,'-k*');
hold('on');
plot(x, x^3,'-ko','MarkerSize', 12);
plot(x, x^4,'-k');
##### 댓글 수: 2표시숨기기 이전 댓글 수: 1
Michelle Hirsch 2016년 1월 29일
The difference is subtle, but intentional. It stems from the different use cases.
MarkerSize is used to control the overall size of markers, just like the overall width of a line with LineWidth or font size. The units are in points, just like LineWidth.
Scatter is used to actually scale the marker sizes based on data. Specifically, the area of the marker is proportional to the value. This is why the units are in points squared.

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

Matt Fig 2011년 4월 30일
To make this type of thing much easier, you could download this code so that all these options are available from a simple mouse click:
##### 댓글 수: 3표시숨기기 이전 댓글 수: 2
Frank Pierce 2016년 9월 1일
yes

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

Hari Desanur 2016년 11월 15일
The Marker Size property for a particular line can be set using line object handles. For example -
l = plot(x1,y1,'*-',x2,y2,'*-');
l(1).MarkerSize = 8; % set marker size of 8 for the first line (x1,y1)
l(2).MarkerSize = 12;
##### 댓글 수: 1표시숨기기 없음
P_L 2019년 4월 18일
Hi there and what if you wanted to chnage the colours of 'ko' data points so that they are filled for example with 'b'
Many thanks

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

### Community Treasure Hunt

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

Start Hunting!

Translated by