I am using MATLAB and was trying to plot energy distribution of ions as a Magnetic Latitude (MLAT) vs Magnetic Local Time (MLT) plot above Antarctica.
I have the energy distribution data as a function of MLAT-MLT co-ordinates so wanted to overplot this as a scatter plot on top of a polar plot (something similar to a geoplot with coastlines outlined as well). This is what I have tried:
all_data = load('struct.mat'); % loading the data
all_data = all_data.struct;
lat = all_data.lat; % MLAT data
mlt = all_data.mlt; % MLT data
heat = all_data.heat; % energy data
load coastlines
worldmap([-90,-40],[-180,100])
sc = scatterm(lat,mlt,75,heat,'filled','s');
geoshow(coastlat,coastlon,"DisplayType","polygon", "FaceColor", 'none', "EdgeColor", 'k');
colormap('parula')
caxis([0 40000])
col = colorbar();
Figure(A): plot obtained after running the above block of codes
Clearly the scatter plot is compressed into a tiny region of 0-24 longitude values as the worldmap and geoshow have co-ordinates as latitude and longitude. I would however like to have the plot with MLT as the label that runs from 0-24 instead of longitude running from -180 to +180 so that the plot accurately reflects the MLT values.
Ideally, I am looking for something like the Figures 1, 2, 3 in the attached images below (obtained from - http://vt.superdarn.org/plot/quickconvection). Figure1, Figure2, Figure3
Those figures are MLAT-MLT plots with the Antartica coastlines overplotted on top as well. Additionally, as time passes Antartica should rotate in the MLAT-MLT co-ordinate grid as seen in those figures.
Thank you for any tips. P.S: Something similar in Python would also help if python can do a better job here.