Assigning different color in legend

조회 수: 11 (최근 30일)
Mr. 206
Mr. 206 2018년 9월 14일
편집: Stephen23 2018년 9월 14일
I am using this code, but it's plotting same color for all the graphs. How can i assign different color for all of them. There is kind of 13/14 graph in one plot.
plot(xz,ys),hold on
%subplot(1,2,2)
%plot(x_0,y_0_diff,'o','markersize',7,xz,ys_diff)
xlabel('1000/T [1/K]')
ylabel('Ignition delay time (ms)')
h=legend("Experiment","M1","M2","M3","M4","M5","M6","M7","M8","M9","M10","M11","M12","location", "northwest");
set (h, "fontsize", 7.9);
  댓글 수: 2
madhan ravi
madhan ravi 2018년 9월 14일
Can you upload the data?
Stephen23
Stephen23 2018년 9월 14일
@Atta: what MATLAB version are you using?

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

답변 (2개)

Pieter Hamming
Pieter Hamming 2018년 9월 14일
The 'r' in plot(xz,ys,'r') means 'red', telling MATLAB you want this line to be plotted in red. If you instead use plot(xz,ys) MATLAB will automatically assign a color.
  댓글 수: 2
Mr. 206
Mr. 206 2018년 9월 14일
if i remove that it is plotting by default blue color(all the graphs)
Pieter Hamming
Pieter Hamming 2018년 9월 14일
Can you try the following snippet and tell us what comes out?
ax=gca;
ax.ColorOrder

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


Stephen23
Stephen23 2018년 9월 14일
편집: Stephen23 2018년 9월 14일
"How can i assign different color for all of them"
Each time you call plot is independent from the other calls, and so each time the colors start from the first color again. If you want to automatically cycle through the axes ColorOrder colors, then you should do any one of these:
  • set the axes NextPlot property to 'add'.
  • use hold on (only since MATLAB R2014b).
  • use just one plot call.
Then you will get an automatic cycling of the line colors, from the axes ColorOrder:

카테고리

Help CenterFile Exchange에서 Graphics Object Properties에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by