Plot multiple maps with transparency using raster data

조회 수: 3 (최근 30일)
Qian
Qian 2024년 3월 21일
댓글: Qian 2024년 3월 21일
I have a three-Dimension dataset var_slice, the first and second dimensions are latitude and longitude, the third is time. I want to plot all the images for all times together by setting the transparency. So I can get a final figure in which regions have multiple occurence have darker color. How can I overlay all the images? I put the code to plot the map for a singe time below and attached the data. Any help would be appreciated.
% load the 3-D data
load var_slice.mat
load lat.mat
load lon.mat
% plot
pcolor(lon,lat,var_slice(:,:,1))
shading interp;
hold on
borders('continental us','color','k','linestyle','-','linewidth',1.2)
% axis tight
hold off
ylim([25,50])
xlim([-130,-95])

답변 (1개)

Walter Roberson
Walter Roberson 2024년 3월 21일
% load the 3-D data
load var_slice.mat
load lat.mat
load lon.mat
% plot
for K = 1 : size(var_slice,3)
s = pcolor(lon,lat,var_slice(:,:,1));
s.FaceAlpha = 0.05;
s.EdgeColor = 'none';
hold on
end
%shading interp;
borders('continental us','color','k','linestyle','-','linewidth',1.2)
Unrecognized function or variable 'borders'.
% axis tight
hold off
ylim([25,50])
xlim([-130,-95])
  댓글 수: 1
Qian
Qian 2024년 3월 21일
Thank you so much for your help. In the for loop the index should be K: s = pcolor(lon,lat,var_slice(:,:,K)). It works! The borders can be added using https://www.mathworks.com/matlabcentral/fileexchange/50390-borders. Thanks again.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Lighting, Transparency, and Shading에 대해 자세히 알아보기

태그

제품


릴리스

R2023a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by