MATLAB: Want to plot three curves with markers on it, but some markers skipped :like p1,p2,p3. How to make a lended with only three entries(=line+marker on it for each)

markerset legend manually

p1=plot(z1,M1,'- black',z1(1:7:end), M1(1:7:end),'o black');
hold
p2=plot(z2,M2,'- black',z2(1:7:end),M2(1:7:end),'. black');
p3=plot(z3,M3,'- black',z3(1:7:end),M3(1:7:end),'s black');

Best Answer

Starting in R2016B, the MarkerIndices line property is doing what you want :
plot(z1,M1,'-s black','MarkerIndices',1:7:length(z3))