;9 examples of how to use thm_map_set and thm_map_add ;note all these examples reset the plotting window ;----------------------------------------------------------------- pro thm_map_ex_1 window thm_map_set thm_map_add,invariant_lats=[60,65,70,75],invariant_color=0,invariant_thick=2 thm_map_add,geographic_lats=50+5*indgen(5),geographic_lons=245+findgen(3)*20,geographic_linestyle=2 xyouts,0.02,0.05,'thm_map_ex_1.pro' ,color=0,/normal xyouts,0.02,0.02,'PACE mag lats and geographic lats and longs over central Canada',color=0,/normal return end pro thm_map_ex_2 window thm_map_set thm_map_add,invariant_lats=[60,65,70,75],invariant_color=0,invariant_thick=2,/invariant_lons xyouts,0.02,0.05,'thm_map_ex_1.pro' ,color=0,/normal xyouts,0.02,0.02,'PACE mag lats and longs over central Canada',color=0,/normal return end pro thm_map_ex_3 window restore,!themis.local_data_dir+'thg/l2/asi/cal/thm_map_add.sav' usersym,[-1,0,1,0,-1],[0,1,0,-1,0],/fill thm_map_set,scale=50e6 xyouts,0.02,0.3,'THEMIS ASIs',/normal,color=0 w=where(thg_map_gb_sites.themis_asi eq 1) & tt=thg_map_gb_sites(w) for i=0,n_elements(tt)-1 do plots,tt(i).longitude,tt(i).latitude,psym=8,color=0,symsize=1.7 wait,0.5 & xyouts,0.02,0.26,'UCLA THEMIS mags',/normal,color=0 w=fix(where(thg_map_gb_sites.themis_fluxgate eq 1 or thg_map_gb_sites.augo_fluxgate eq 1)) thm_map_add,asi_fovs=w,asi_fov_color=0,asi_fov_thick=2,asi_emission_height=30 wait,0.5 & xyouts,0.02,0.22,'CARISMA mags that feed to THEMIS',/normal,color=250 w=fix(where(thg_map_gb_sites.carisma_fluxgate eq 1 and thg_map_gb_sites.themis_asi eq 1)) thm_map_add,asi_fovs=w,asi_fov_color=250,asi_fov_thick=2,asi_emission_height=30 wait,0.5 & xyouts,0.02,0.18,'NRCan mags that feed to THEMIS',/normal,color=110 w=where(thg_map_gb_sites.nrcan_fluxgate eq 1 and thg_map_gb_sites.themis_asi eq 1) thm_map_add,asi_fovs=fix(w),asi_fov_color=110,asi_fov_thick=2,asi_emission_height=30 ;wait,0.5 & xyouts,0.02,0.14,'AUGO mags that feed to THEMIS',/normal,color=150 ;w=where(gb_sites.augo_fluxgate eq 1) ;thm_map_add,asi_fovs=fix(w),asi_fov_color=150,asi_fov_thick=2,asi_emission_height=30 wait,0.5 & xyouts,0.02,0.14,'GIMA mags that feed to THEMIS',/normal,color=30 w=where(thg_map_gb_sites.gima_fluxgate eq 1) thm_map_add,asi_fovs=fix(w),asi_fov_color=30,asi_fov_thick=2,asi_emission_height=30 wait,0.5 & xyouts,0.02,0.10,'non-GBO THEMIS EPO fluxgates',/normal,color=0 w=where(thg_map_gb_sites.themis_epo_fluxgate eq 1 and thg_map_gb_sites.themis_fluxgate eq 0) thm_map_add,asi_fovs=fix(w),asi_fov_color=0,asi_fov_thick=2,asi_emission_height=30 return end pro thm_map_ex_4 window thm_map_set thm_map_add,invariant_lats=[60,65,70,75],invariant_color=0,invariant_thick=1,/invariant_lons thm_map_add,asi_fovs=1,asi_fov_color=250,asi_fov_thick=2 xyouts,0.02,0.02,'Show ASI FOVs at one heights',color=0,/normal return end pro thm_map_ex_5 window thm_map_set thm_map_add,invariant_lats=[60,65,70,75],invariant_color=0,invariant_thick=1,/invariant_lons thm_map_add,asi_fovs=1,asi_fov_color=250,asi_fov_thick=2 thm_map_add,asi_fovs=1,asi_fov_color=150,asi_fov_thick=2,asi_emission_height=230 xyouts,0.02,0.02,'Show ASI FOVs at two heights',color=0,/normal return end pro thm_map_ex_6 window restore,!themis.local_data_dir+'thg/l2/asi/cal/thm_map_add.sav' thm_map_set thm_map_add,invariant_lats=[65,70,75],invariant_color=250,invariant_thick=1,/invariant_lons thm_map_add,asi_fovs=1,asi_fov_color=0,asi_fov_thick=2 thm_map_add,asi_fovs='RABB',asi_fov_color=150,asi_fov_thick=4 xyouts,0.02,0.02,'NORSTAR-Rainbow Starlight Express Imager at Rabbit Lake',color=0,/normal return end pro thm_map_ex_7 dx=0.3333 dy=0.3333 window,xsize=700,ysize=700 cc=indgen(6)+2 for i=0,2 do for j=0,1 do begin pa=[i*dx,(2-j)*dy,(i+1)*dx,((2-j)+1)*dy] thm_map_set,position=pa,scale=85e6,noerase=i+j,color_continent=cc(3*j+i) xyouts,pa(0)+0.01,pa(1)+0.01,'color_background=default',/normal,color=255 xyouts,pa(0)+0.01,pa(1)+0.03,'color_continent='+strcompress(string(cc(3*j+i)),/remove_all),/normal,color=255 endfor cc=[2,4,6] dd=[4,2,2] for i=0,2 do for j=2,2 do begin pa=[i*dx,(2-j)*dy,(i+1)*dx,((2-j)+1)*dy] thm_map_set,position=pa,scale=85e6,noerase=i+j,color_background=cc(i),color_continent=dd(i) xyouts,pa(0)+0.01,pa(1)+0.03,'color_continent='+strcompress(string(dd(i)),/remove_all),/normal,color=255 xyouts,pa(0)+0.01,pa(1)+0.01,'color_background='+strcompress(string(cc(i)),/remove_all),/normal,color=255 endfor return end pro thm_map_ex_8 dx=0.3333 & dy=1.0 & window,xsize=900,ysize=300 cc=250+20*indgen(3) for i=0,2 do begin pa=[i*dx,0,(i+1)*dx,dy] thm_map_set,position=pa,scale=85e6,noerase=i,central_lon=cc(i) thm_map_add,geographic_lats=50+5*indgen(5),geographic_lons=245+findgen(3)*20 xyouts,pa(0)+0.01,pa(1)+0.02,'central_lon='+strcompress(string(cc(i)),/remove_all),/normal,color=255 xyouts,pa(0)+0.01,pa(1)+0.07,'central_lat=default',/normal,color=255 plots,pa([0,0,2,2,0]),pa([1,3,3,1,1]),color=255,thick=2,/normal endfor return end pro thm_map_ex_9 usersym,[-1,0,1,0,-1],[0,1,0,-1,0],/fill restore,!themis.local_data_dir+'thg/l2/asi/cal/thm_map_add.sav' w=where(thg_map_gb_sites.abbreviation eq 'GILL') tt=thg_map_gb_sites(w(0)) dx=0.3333 & dy=1.0 & window,xsize=900,ysize=300 cc=20e6+17e6*indgen(3) for i=0,2 do begin pa=[i*dx,0,(i+1)*dx,dy] thm_map_set,position=pa,noerase=i,scale=cc(i),central_lat=tt.latitude,central_lon=tt.longitude plots,tt.longitude,tt.latitude,psym=8,color=250,symsize=1.4 thm_map_add,asi_fovs=[fix(w(0))],asi_fov_color=250,asi_emission_height=110,asi_fov_thick=2 xyouts,pa(0)+0.01,pa(1)+0.12,'scale='+strcompress(string(round(cc(i)/1e6)),/remove_all)+'e6',/normal,color=255 xyouts,pa(0)+0.01,pa(1)+0.07,'central_lon=longitude of Gillam',/normal,color=255 xyouts,pa(0)+0.01,pa(1)+0.02,'central_lat=latitude of Gillam',/normal,color=255 plots,pa([0,0,2,2,0]),pa([1,3,3,1,1]),color=255,thick=2,/normal endfor x0=0.05 & y0=0.87 & dx=0.32 & dy=0.1 & polyfill,x0+[0,0,1,1,0]*dx,y0+[0,1,1,0,0]*dy,color=255,/normal xyouts,x0+0.02,y0+0.06,'each thm_map_set is centered on Gillam',color=0,/normal xyouts,x0+0.02,y0+0.015,'each thm_map_set uses a different scale',color=0,/normal return end ;----------------------------------------------------------------------- pro thm_map_ex_12 iy=2006 & im1=12 & id=23 & ih=6 for im=17,30 do for is=0,57,3 do begin date_time_string=string(iy,im1,id,format='(i4.4,2i2.2)')+'_'+string(ih,im,is,format='(3i2.2)') window,xsize=600,ysize=300 factor=1/55.0 ;kluge minimum_elevation_to_plot=8 ;degrees n1=long(256)*long(256) thm_map_set,central_lon=255,central_lat=65 site_list=['fsmi','gill','snkq','inuv','fykn'] thm_mosaic_array,iy,im1,id,ih,im,is,site_list,$ image,corners,elevation,pixel_illuminated,n_sites loadct,0 for pixel=long(0),n1-long(1) do for i_site=0,n_sites-1 do begin if pixel_illuminated(pixel,i_site) eq 1 and elevation(pixel,i_site) gt minimum_elevation_to_plot then begin xx=corners(pixel,[0,1,2,3,0],0,i_site) yy=corners(pixel,[0,1,2,3,0],1,i_site) cc=(image(pixel,i_site)/50.0) < 255 polyfill,xx,yy,color=cc endif endfor thm_map_add,invariant_lats=[60,65,70,75],invariant_color=210,invariant_linestyle=2 xyouts,0.005,0.018,date_time_string,color=0,/normal xyouts,0.005,0.060,'THEMIS-GBO ASI',color=0,/normal ; write_png,'20061223_mosaics/mosaic_'+date_time_string+'.png',tvrd(/true) endfor return end pro thm_map_ex_13 starttime=systime(1) iy=2006 & im1=12 & id=23 & ih=6 & im=18 & is=0 date_time_string=string(iy,im1,id,format='(i4.4,2i2.2)')+'_'+string(ih,im,is,format='(3i2.2)') window,xsize=600,ysize=300 factor=1/55.0 ;kluge minimum_elevation_to_plot=8 ;degrees n1=long(256)*long(256) thm_map_set,central_lon=255,central_lat=65 site_list=['fsmi','gill','snkq','inuv','fykn'] thm_mosaic_array,iy,im1,id,ih,im,is,site_list,$ image,corners,elevation,pixel_illuminated,n_sites loadct,0 for pixel=long(0),n1-long(1) do for i_site=0,n_sites-1 do begin if pixel_illuminated(pixel,i_site) eq 1 and elevation(pixel,i_site) gt minimum_elevation_to_plot then begin xx=corners(pixel,[0,1,2,3,0],0,i_site) yy=corners(pixel,[0,1,2,3,0],1,i_site) cc=(image(pixel,i_site)/50.0) < 255 polyfill,xx,yy,color=cc endif endfor thm_map_add,invariant_lats=[60,65,70,75],invariant_color=210,invariant_linestyle=2 xyouts,0.005,0.018,date_time_string,color=0,/normal xyouts,0.005,0.060,'THEMIS-GBO ASI',color=0,/normal write_png,'thm_map_ex_13.png',tvrd(/true) print,'Takes ',systime(1)-starttime return end pro thm_map_ex_cdf_full starttime=systime(1) iy=2006 & im1=12 & id=23 & ih=6 & im=18 & is=0 timespan,'2006-12-23',1,/days date_time_string=string(iy,im1,id,format='(i4.4,2i2.2)')+'_'+string(ih,im,is,format='(3i2.2)') window,xsize=600,ysize=300 factor=1/55.0 ;kluge minimum_elevation_to_plot=8 ;degrees n1=long(256)*long(256) thm_map_set,central_lon=255,central_lat=65 site_list=['fsmi','gill','snkq','inuv','fykn'] thm_mosaic_array,iy,im1,id,ih,im,is,site_list,$ image,corners,elevation,pixel_illuminated,n_sites,/cdf_file loadct,0 for pixel=long(0),n1-long(1) do for i_site=0,n_sites-1 do begin if pixel_illuminated(pixel,i_site) eq 1 and elevation(pixel,i_site) gt minimum_elevation_to_plot then begin xx=corners(pixel,[0,1,2,3,0],0,i_site) yy=corners(pixel,[0,1,2,3,0],1,i_site) cc=(image(pixel,i_site)/50.0) < 255 polyfill,xx,yy,color=cc endif endfor thm_map_add,invariant_lats=[60,65,70,75],invariant_color=210,invariant_linestyle=2 xyouts,0.005,0.018,date_time_string,color=0,/normal xyouts,0.005,0.060,'THEMIS-GBO ASI',color=0,/normal write_png,'thm_map_ex_13.png',tvrd(/true) print,'Takes ',systime(1)-starttime return end