Plotting latitude, longitude and array with a shapefile outline

I have three 120 by 150 arrays, one for latitude, one for longitude and one for solar radiation. I also have a shapefile showing the Ethiopian border.shapefile_ethiopia.png.
I can use pcolor to plot this data but I would really like to use a shapefile to show the Ethiopian country outline on top of this data.
I would really appreciate any help. Thank you!ethiopia_solarradiation.png

 Accepted Answer

Hi,
You can plot the map outline over your data by using ‘geoshow’ function and setting the 'FaceColor' field to 'none'. If the line isn’t clearly visible, you could alter the ‘linewidth’ field as required. Hope this helps
eg: geoshow('landareas.shp', 'FaceColor', 'none','LineWidth',2);
For more information on the “geoshow function”, you can refer to this link: https://www.mathworks.com/help/map/ref/geoshow.html

1 Comment

This is perfect! Thank you very much Raghav, I really appreciate your help! :)
Here's the resulting plot for anyone who may be interested:
and the code:
ethiopia_shape_file='C:\Work\shape_files\ETH_adm0.shp';
figure; pcolor(long_array,lat_array,solar_rad); shading flat; colorbar;
hold on;
geoshow(ethiopia_shape_file, 'FaceColor', 'none','LineWidth',2);data_ethiopiaoutline.png

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2018b

Community Treasure Hunt

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

Start Hunting!