如何在MATLAB中使用相同的色阶绘制不同的曲面?

时间:2009-06-12 15:25:54

标签: matlab plot

我试图表示几个表面图*,其比例略有不同。每个表面图都绘制在一个单独的子图和/或图中。

现在,我正在使用默认颜色映射,它会自动将颜色映射的整个范围缩放到我的图形,即我的表面的最大值始终为红色(在'jet'颜色模式下),无论幅度如何这个最大值。

我希望色彩图在图形之间保持一致,而不是在每个单独图形的最小值和最大值之间展开。这样,读者可以通过查看颜色图来欣赏表面比例的差异。

关于如何做到这一点的任何想法?


**实际上,如果它有所不同,我正在使用plot命令绘制曲面拟合操作的结果,如下所示:*

   [myfit, gof] = fit( ... );
   plot(fit)

2 个答案:

答案 0 :(得分:5)

您应该使用caxis功能。例如,如果一个表面的高度为0到5,另一个表面的高度为0到10,则对两个图表执行以下操作:

caxis([0 10]);

将强制它们使用与覆盖较大范围的绘图相同的颜色比例。您也可以使用轴句柄作为第一个参数调用caxis

caxis(hAxes, [0 10]);  % Sets the color scaling for hAxes

如果未指定,caxis会调整当前轴的颜色缩放比例。

答案 1 :(得分:3)