poster
2019-12-10, 16:49
我正在尝试代表比例不同的几个表面图*。每个表面图都绘制在单独的子图中和/或图中。
现在,我正在使用默认的颜色映射,该颜色映射会自动将颜色映射的整个范围缩放到我的图形,即我的表面的最大值始终为红色(在“喷射”颜色模式下),无论该最大值的大小如何。
我希望颜色图在图形之间保持一致,而不是在每个单独的图形的最小值和最大值之间分布。这样,读者仅通过查看颜色图即可体会到表面比例的差异。
关于如何执行此操作的任何想法?
**实际上,如果有所不同,我正在使用plot命令绘制曲面拟合操作的结果,如下所示:*
[myfit, gof] = fit( ... ); plot(fit)
回答:
您应该使用caxis (https://www.mathworks.com/help/matlab/ref/caxis.html)功能。例如,如果一个表面的高度为0到5,另一个表面的高度为0到10,则对两个图执行以下操作:
caxis([0 10]); 将迫使它们使用与覆盖较大范围的图相同的色标。您还可以使用轴手柄作为第一个参数来调用caxis :
caxis(hAxes, [0 10]); % Sets the color scaling for hAxes 如果未指定, caxis调整当前轴的颜色比例。
更多&回答... (https://stackoverflow.com/questions/987283)
现在,我正在使用默认的颜色映射,该颜色映射会自动将颜色映射的整个范围缩放到我的图形,即我的表面的最大值始终为红色(在“喷射”颜色模式下),无论该最大值的大小如何。
我希望颜色图在图形之间保持一致,而不是在每个单独的图形的最小值和最大值之间分布。这样,读者仅通过查看颜色图即可体会到表面比例的差异。
关于如何执行此操作的任何想法?
**实际上,如果有所不同,我正在使用plot命令绘制曲面拟合操作的结果,如下所示:*
[myfit, gof] = fit( ... ); plot(fit)
回答:
您应该使用caxis (https://www.mathworks.com/help/matlab/ref/caxis.html)功能。例如,如果一个表面的高度为0到5,另一个表面的高度为0到10,则对两个图执行以下操作:
caxis([0 10]); 将迫使它们使用与覆盖较大范围的图相同的色标。您还可以使用轴手柄作为第一个参数来调用caxis :
caxis(hAxes, [0 10]); % Sets the color scaling for hAxes 如果未指定, caxis调整当前轴的颜色比例。
更多&回答... (https://stackoverflow.com/questions/987283)