77def select_step_degree (dv ):
88
99 degree_limits_ = [1.5 , 3 , 7 , 13 , 20 , 40 , 70 , 120 , 270 , 520 ]
10- degree_steps_ = [ 1 , 2 , 5 , 10 , 15 , 30 , 45 , 90 , 180 , 360 ]
10+ degree_steps_ = [1 , 2 , 5 , 10 , 15 , 30 , 45 , 90 , 180 , 360 ]
1111 degree_factors = [1. ] * len (degree_steps_ )
1212
1313 minsec_limits_ = [1.5 , 2.5 , 3.5 , 8 , 11 , 18 , 25 , 45 ]
@@ -41,7 +41,7 @@ def select_step_degree(dv):
4141def select_step_hour (dv ):
4242
4343 hour_limits_ = [1.5 , 2.5 , 3.5 , 5 , 7 , 10 , 15 , 21 , 36 ]
44- hour_steps_ = [1 , 2 , 3 , 4 , 6 , 8 , 12 , 18 , 24 ]
44+ hour_steps_ = [1 , 2 , 3 , 4 , 6 , 8 , 12 , 18 , 24 ]
4545 hour_factors = [1. ] * len (hour_steps_ )
4646
4747 minsec_limits_ = [1.5 , 2.5 , 3.5 , 4.5 , 5.5 , 8 , 11 , 14 , 18 , 25 , 45 ]
@@ -141,11 +141,11 @@ def select_step(v1, v2, nv, hour=False, include_last=True,
141141
142142
143143def select_step24 (v1 , v2 , nv , include_last = True , threshold_factor = 3600 ):
144- v1 , v2 = v1 / 15. , v2 / 15.
145- levs , n , factor = select_step (v1 , v2 , nv , hour = True ,
146- include_last = include_last ,
147- threshold_factor = threshold_factor )
148- return levs * 15. , n , factor
144+ v1 , v2 = v1 / 15 , v2 / 15
145+ levs , n , factor = select_step (v1 , v2 , nv , hour = True ,
146+ include_last = include_last ,
147+ threshold_factor = threshold_factor )
148+ return levs * 15 , n , factor
149149
150150
151151def select_step360 (v1 , v2 , nv , include_last = True , threshold_factor = 3600 ):
@@ -243,36 +243,34 @@ def _get_number_fraction(self, factor):
243243 def __call__ (self , direction , factor , values ):
244244 if len (values ) == 0 :
245245 return []
246- #ss = [[-1, 1][v>0] for v in values] #not py24 compliant
247- values = np .asarray (values )
248- ss = np .where (values > 0 , 1 , - 1 )
249246
250- sign_map = {( - 1 , True ): "-" }
251- signs = [sign_map . get (( s , v != 0 ), "" ) for s , v in zip ( ss , values ) ]
247+ ss = np . sign ( values )
248+ signs = ["-" if v < 0 else "" for v in values ]
252249
253250 factor , number_fraction = self ._get_number_fraction (factor )
254251
255252 values = np .abs (values )
256253
257254 if number_fraction is not None :
258- values , frac_part = divmod (values , 10 ** number_fraction )
255+ values , frac_part = divmod (values , 10 ** number_fraction )
259256 frac_fmt = "%%0%dd" % (number_fraction ,)
260257 frac_str = [frac_fmt % (f1 ,) for f1 in frac_part ]
261258
262259 if factor == 1 :
263260 if number_fraction is None :
264- return [self .fmt_d % (s * int (v ),) for ( s , v ) in zip (ss , values )]
261+ return [self .fmt_d % (s * int (v ),) for s , v in zip (ss , values )]
265262 else :
266- return [self .fmt_ds % (s * int (v ), f1 )
267- for ( s , v , f1 ) in zip (ss , values , frac_str )]
263+ return [self .fmt_ds % (s * int (v ), f1 )
264+ for s , v , f1 in zip (ss , values , frac_str )]
268265 elif factor == 60 :
269266 deg_part , min_part = divmod (values , 60 )
270267 if number_fraction is None :
271268 return [self .fmt_d_m % (s1 , d1 , m1 )
272269 for s1 , d1 , m1 in zip (signs , deg_part , min_part )]
273270 else :
274271 return [self .fmt_d_ms % (s , d1 , m1 , f1 )
275- for s , d1 , m1 , f1 in zip (signs , deg_part , min_part , frac_str )]
272+ for s , d1 , m1 , f1
273+ in zip (signs , deg_part , min_part , frac_str )]
276274
277275 elif factor == 3600 :
278276 if ss [- 1 ] == - 1 :
@@ -291,7 +289,8 @@ def __call__(self, direction, factor, values):
291289 if number_fraction is None :
292290 sec_str = [self .fmt_s_partial % (s1 ,) for s1 in sec_part ]
293291 else :
294- sec_str = [self .fmt_ss_partial % (s1 , f1 ) for s1 , f1 in zip (sec_part , frac_str )]
292+ sec_str = [self .fmt_ss_partial % (s1 , f1 )
293+ for s1 , f1 in zip (sec_part , frac_str )]
295294
296295 for s , d1 , m1 , s1 in zip (signs , deg_part , min_part , sec_str ):
297296 l_hm = self .fmt_d_m_partial % (s , d1 , m1 )
@@ -328,20 +327,16 @@ class FormatterHMS(FormatterDMS):
328327 fmt_ss_partial = "%02d.%s" + sec_mark + "$"
329328
330329 def __call__ (self , direction , factor , values ): # hour
331- return FormatterDMS .__call__ (self , direction , factor , np .asarray (values )/ 15. )
330+ return super () .__call__ (direction , factor , np .asarray (values ) / 15 )
332331
333332
334333class ExtremeFinderCycle (ExtremeFinderSimple ):
335334 """
336335 When there is a cycle, e.g., longitude goes from 0-360.
337336 """
338- def __init__ (self ,
339- nx , ny ,
340- lon_cycle = 360. ,
341- lat_cycle = None ,
342- lon_minmax = None ,
343- lat_minmax = (- 90 , 90 )
344- ):
337+ def __init__ (self , nx , ny ,
338+ lon_cycle = 360. , lat_cycle = None ,
339+ lon_minmax = None , lat_minmax = (- 90 , 90 )):
345340 self .nx , self .ny = nx , ny
346341 self .lon_cycle , self .lat_cycle = lon_cycle , lat_cycle
347342 self .lon_minmax = lon_minmax
0 commit comments