How to plot spatial data

Hi, I would like to plot some spatial data.
In particular, I have three variables,
lat 81x1 single
lon 241x1 single
u 241x81 double
I have another code from a uni course, but the variable dimension where different. So I tried to change it and obtained the code reported.
fig2=figure('units','normalized','outerposition',[0.5 0.5 0.4 0.55]);
hold on
worldmap([double(min(lat)) double(max(lat))], [double(min(lon)) double(max(lon))]);
plot(lat,lon, u)
But I get the error:
Error using plot Vectors must be the same length.
Error in ERA5 (line 22) plot(lat,lon, u)
Could you help me please? Thank you!

Answers (1)

As the error says, lat and lon need to be the same size.
Based on the shape of your variables, I suspect you need to use meshgrid to convert your variables from vectors to matrices. Something like this:
[LAT, LON] = meshgrid(lat, lon);
plot(LAT(:), LON(:), u(:))

Categories

Products

Release

R2022a

Asked:

on 19 Sep 2022

Answered:

on 19 Sep 2022

Community Treasure Hunt

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

Start Hunting!