我想要绘制6个向量。 我如何用不同的颜色(随机)制作每个图? 使用下面的代码,图表限制为所有六个向量的一种颜色。
plot(x,y,'-rs','LineWidth',1,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
'MarkerSize',5);
答案 0 :(得分:42)
您可以让PLOT自动为您选择线条颜色。如果所有6个向量的长度相同,则可以将x和y坐标放入N-by-6矩阵X
和Y
,并将它们传递给PLOT。每列将使用不同的颜色:
plot(X,Y,'-s'); %# Plots lines with square markers
你也可以使用一些内置的colormaps来生成一组颜色,然后在分别绘制每一行时使用这些颜色。例如:
cmap = hsv(6); %# Creates a 6-by-3 set of colors from the HSV colormap
for i = 1:6 %# Loop 6 times
plot(X(:,i),Y(:,i),'-s','Color',cmap(i,:)); %# Plot each column with a
%# different color
end
答案 1 :(得分:4)
要创建随机颜色贴图,您可以执行以下操作
myMap = rand(nbColors, 3);
for i = 1:nbColors
plot(X(:,i),Y(:,i),'-s','Color',myMap(i,:));
end
然而,正如我在对gnovice的回答中所说的那样,从色彩图中挑选颜色通常会提供更易读的颜色组合。