num_big= 12; % 至少 9*4*11 才会重复 colors_9= {'#0072BD'; '#D95319'; '#EDB120'; '#7E2F8E'; '#77AC30'; ... '#4DBEEE'; '#A2142F'; '#FF00FF'; '#48D1CC'}; num_c= length(colors_9); % 9种 lineStyle_4= {'-'; '--'; '-.'; ':'}; num_l= length(lineStyle_4); % 4种 marker_11= {'o';'+'; 'x'; 's'; 'd'; '^'; 'p'; ... 'h'; '.'; '<'; '*'}; num_m= length(marker_11); % 11种 pltStyle= repmat(struct('Color',[], 'LineStyle','', 'Marker',''), [num_big,1]); for count=1:num_big c0= mod(count,num_c)+1; l0= mod(count,num_l)+1; m0= mod(count,num_m)+1; pltStyle(count).Color= colors_9{c0}; pltStyle(count).LineStyle= lineStyle_4{l0}; pltStyle(count).Marker= marker_11{m0}; end
可以保证至少 $9 \times 4 \times 11$ 种 metric 之后才会重复。
感谢 https://www.cnblogs.com/sunny99/ sumoier对本文的帮助
标签:11,...,标记,重复,colors,num,MATLAB,线性 From: https://www.cnblogs.com/Yi-920259020/p/18432097