Matlab:如何在plot3()函数中平滑矩阵的颜色?

时间:2012-10-16 16:32:49

标签: matlab colors plot smooth

我使用plot3绘制矩阵,使得结果图显示该矩阵的每个向量的不同颜色:

plot3(Grid.x1(:,:),Grid.x2(:,:),phi(:,:))

enter image description here

如何平滑这个情节的色彩?谢谢!

1 个答案:

答案 0 :(得分:3)

您可以使用FileExchange中的varycolor来构建和控制连续范围的色谱。这样,不同线条之间的过渡看起来更自然,近端线条将具有相似的颜色。

您可以在此处阅读更多内容并查看示例用法http://blogs.mathworks.com/pick/2008/08/15/colors-for-your-multi-line-plots/

示例

[X,Y,Z] = peaks(128);

% raw plot3()
figure; plot3(X, Y, Z); 

enter image description here

% define set equal to line number
ColorSet = varycolor(128);

% smooth plot3()
figure; hold all;
set(gca, 'ColorOrder', ColorSet);
plot3(X, Y, Z); view(3); 

enter image description here

<强>更新: 对于连续的3D绘图(即曲面),您可以使用surfl代替plot3,并将数据显示为3-D Surface Plot (with Shading)。您还可以在结果曲面上应用任何colormap,例如grayColorSet,如上所述。

surfl(X,Y,Z);
shading interp;
colormap(gray); 

enter image description here