Matlab gplot额外自定义颜色

Matlab gplot额外自定义颜色,matlab,graph,colors,plot,Matlab,Graph,Colors,Plot,我有一个关于Matlab函数的问题。我想在for-循环中多次调用gplot,在同一个图中绘制多个图形/路径。 但是,我想使用比标准可用颜色更多的颜色。例如,使用普通的plot命令,可以通过以下方式完成: plot([1 2],[3 4],'Color',[rand rand rand]) 但这在gplot中似乎是不可能的。有人知道怎么做吗。我的代码当前为: col=char('r', 'g', 'm', 'y','r', 'g', 'm', 'y') hold all for i=1:k g

我有一个关于Matlab函数的问题。我想在
for
-循环中多次调用
gplot
,在同一个图中绘制多个图形/路径。
但是,我想使用比标准可用颜色更多的颜色。例如,使用普通的plot命令,可以通过以下方式完成:

plot([1 2],[3 4],'Color',[rand rand rand]) 
但这在
gplot
中似乎是不可能的。有人知道怎么做吗。我的代码当前为:

col=char('r', 'g', 'm', 'y','r', 'g', 'm', 'y')
hold all
for i=1:k
gplot(Cell_Matrix{i},coordinates,col(i))
end
hold off

因此,现在我重复使用相同的颜色(不包括一些我不想要的颜色),但我想添加更多的新颜色(大约额外25种)。

不是最干净的解决方案,但您可以操纵Matlab的默认打印顺序。因此,在使用现有代码之前,请调用:

figure;
colors = get(gca,'ColorOrder');
colors
现在包含使用
hold all
时Matlab默认颜色周期的颜色数据。您应该能够删除RGB值行并将其添加到此矩阵

例如,要仅使用
k
随机颜色:

colors = rand(k, 3);
一旦此矩阵设置为您满意的值,只需将当前轴中的颜色顺序替换为:

set(gca,'ColorOrder',colors)
然后执行已发布代码其余部分的修改版本:

hold all;
for i=1:k
    gplot(Cell_Matrix{i},coordinates)
end