从给定多边形内的数据的 3D 矩阵制作多个图

Make multiple plots from 3D matrix, of data inside given polygon

我有一个 420*940*12 矩阵(每个网格的值范围为 0-100),我只想在多边形 S 内绘制数据,其中 lat (420* 1) 和 lon (940*1) 作为网格参考。

我们可以创建一个只有点但没有值 (0-100) 的图:

S = shaperead(polygon);
N = length(S);
[X,Y] = meshgrid(lon,lat);
data= test;
for k = 1:N
    idx =  insidepoly(X(:),Y(:),S(k).X,S(k).Y);
    hold on
    plot(X(idx), Y(idx), 'r*')
end

但这个数字只显示点而不是它的值 (0-100) 输出是这样的:

但是我必须将多个数据绘制在一起,比如说一年中的 12 个月,那么我如何根据值 (0-100) 将 12 个图绘制在一起,如下图所示?

enter image description here

一种可能的解决方案是使用蒙太奇,请参见此处:

img = imread('peppers.png');
img = repmat(img,1,1,1,6);
montage(img)