作为一个例子,我想要做到以下几点:
cc=gray(100);
for i=1:100
plot(i,i,'o','MarkerFaceColor',cc(i,:,:));
hold on;
end;
...但没有for循环,即自动迭代 - 如:
i=1:100;
plot(i,i,'o','MarkerFaceColor',cc(i,:,:));
显然以下工作:
i=1:100;
plot(i,i,'o');
...但我希望matlab自动迭代每个新绘制点的颜色空间。在实践中,我有一个更复杂的例子,使用嵌入式for循环,但这需要很长时间才能绘制。注:我真的不是matlab专家。
无论如何,我希望这是可能的,如果是这样,那么正确的语法可能是什么。
感谢阅读和您可能有的任何见解,
干杯,
本。
答案 0 :(得分:0)
检查scatter功能。它需要一个额外的颜色矢量,您可以从色彩图中自己构建。添加'filled'选项作为最后一个参数将填充标记。
所以我认为以下内容应该有效:
cm = gray(100);
x = 1:100;
scatter(x,x,[],cm,'filled')