Index: /issm/trunk/src/m/classes/public/plot/applyoptions.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/applyoptions.m	(revision 2697)
+++ /issm/trunk/src/m/classes/public/plot/applyoptions.m	(revision 2698)
@@ -45,4 +45,11 @@
 else
 	view(getfieldvalue(options,'view',2));
+end
+
+%latlon
+%Must be done here so that it uses the same xlim and ylim as plot_overlay
+%these are changed by axis that follows
+if exist(options,'latlon')
+	latlonoverlay(options);
 end
 
@@ -184,9 +191,4 @@
 end
 
-%latlon
-if exist(options,'latlon')
-	latlonoverlay(options);
-end
-
 %north arrow
 if exist(options,'northarrow'),
Index: /issm/trunk/src/m/classes/public/plot/latlonoverlay.m
===================================================================
--- /issm/trunk/src/m/classes/public/plot/latlonoverlay.m	(revision 2697)
+++ /issm/trunk/src/m/classes/public/plot/latlonoverlay.m	(revision 2698)
@@ -104,5 +104,5 @@
 				xcorner2=x(ind-1); ycorner2=y(ind-1);
 			end
-			angle=(180)/pi*atan2((ycorner2-ycorner),(xcorner2-xcorner))+lonangle;
+			angle=mod((180)/pi*atan2((ycorner2-ycorner),(xcorner2-xcorner))+lonangle,360);
 			
 			if (xcorner>xlimits(1) & xcorner<xlimits(2) & ycorner>ylimits(1) & ycorner<ylimits(2)),
@@ -147,5 +147,5 @@
 				xcorner2=x(ind-1); ycorner2=y(ind-1);
 			end
-			angle=(180)/pi*atan2((ycorner2-ycorner),(xcorner2-xcorner))+latangle;
+			angle=mod((180)/pi*atan2((ycorner2-ycorner),(xcorner2-xcorner))+lonangle,360);
 			
 			if (xcorner>xlimits(1) & xcorner<xlimits(2) & ycorner>ylimits(1) & ycorner<ylimits(2)),
