Skip to content

Commit 4174179

Browse files
authored
Merge pull request #7545 from QuLogic/axisartist-testing
Axisartist testing + bugfixes
2 parents 7d50546 + b614316 commit 4174179

26 files changed

+728
-817
lines changed

lib/mpl_toolkits/axisartist/angle_helper.py

Lines changed: 26 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -162,27 +162,22 @@ def select_step360(v1, v2, nv, include_last=True, threshold_factor=3600):
162162
threshold_factor=threshold_factor)
163163

164164

165-
166165
class LocatorBase(object):
167166
def __init__(self, den, include_last=True):
168167
self.den = den
169168
self._include_last = include_last
170169

171-
def _get_nbins(self):
170+
@property
171+
def nbins(self):
172172
return self.den
173173

174-
def _set_nbins(self, v):
174+
@nbins.setter
175+
def nbins(self, v):
175176
self.den = v
176177

177-
nbins = property(_get_nbins, _set_nbins)
178-
179-
def set_params(self, **kwargs):
180-
if "nbins" in kwargs:
181-
self.den = int(kwargs.pop("nbins"))
182-
183-
if kwargs:
184-
raise ValueError("Following keys are not processed: %s"
185-
% ", ".join(kwargs))
178+
def set_params(self, nbins=None):
179+
if nbins is not None:
180+
self.den = int(nbins)
186181

187182

188183
class LocatorHMS(LocatorBase):
@@ -215,25 +210,21 @@ def __call__(self, v1, v2):
215210
threshold_factor=1)
216211

217212

218-
219213
class FormatterDMS(object):
220-
221214
deg_mark = "^{\circ}"
222215
min_mark = "^{\prime}"
223216
sec_mark = "^{\prime\prime}"
224217

225-
fmt_d = "$%d"+deg_mark+"$"
226-
fmt_ds = r"$%d.\!\!"+deg_mark+"%s$"
227-
228-
# %s for signe
229-
fmt_d_m = r"$%s%d"+deg_mark+"\,%02d"+min_mark+"$"
230-
fmt_d_ms = r"$%s%d"+deg_mark+"\,%02d.\mkern-4mu"+min_mark+"%s$"
218+
fmt_d = "$%d" + deg_mark + "$"
219+
fmt_ds = r"$%d.%s" + deg_mark + "$"
231220

221+
# %s for sign
222+
fmt_d_m = r"$%s%d" + deg_mark + "\,%02d" + min_mark + "$"
223+
fmt_d_ms = r"$%s%d" + deg_mark + "\,%02d.%s" + min_mark + "$"
232224

233-
fmt_d_m_partial = "$%s%d"+deg_mark+"\,%02d"+min_mark+"\,"
234-
fmt_s_partial = "%02d"+sec_mark+"$"
235-
fmt_ss_partial = "%02d.\!\!"+sec_mark+"%s$"
236-
225+
fmt_d_m_partial = "$%s%d" + deg_mark + "\,%02d" + min_mark + "\,"
226+
fmt_s_partial = "%02d" + sec_mark + "$"
227+
fmt_ss_partial = "%02d.%s" + sec_mark + "$"
237228

238229
def _get_number_fraction(self, factor):
239230
## check for fractional numbers
@@ -292,7 +283,7 @@ def __call__(self, direction, factor, values):
292283
if ss[-1] == -1:
293284
inverse_order = True
294285
values = values[::-1]
295-
sings = signs[::-1]
286+
signs = signs[::-1]
296287
else:
297288
inverse_order = False
298289

@@ -313,7 +304,7 @@ def __call__(self, direction, factor, values):
313304
l_hm_old = l_hm
314305
l = l_hm + s1 #l_s
315306
else:
316-
l = "$"+s1 #l_s
307+
l = "$" + s + s1
317308
r.append(l)
318309

319310
if inverse_order:
@@ -324,23 +315,22 @@ def __call__(self, direction, factor, values):
324315
else: # factor > 3600.
325316
return [r"$%s^{\circ}$" % (str(v),) for v in ss*values]
326317

318+
327319
class FormatterHMS(FormatterDMS):
328320
deg_mark = "^\mathrm{h}"
329321
min_mark = "^\mathrm{m}"
330322
sec_mark = "^\mathrm{s}"
331323

332-
fmt_d = "$%d"+deg_mark+"$"
333-
fmt_ds = r"$%d.\!\!"+deg_mark+"%s$"
334-
335-
# %s for signe
336-
fmt_d_m = r"$%s%d"+deg_mark+"\,%02d"+min_mark+"$"
337-
fmt_d_ms = r"$%s%d"+deg_mark+"\,%02d.\!\!"+min_mark+"%s$"
324+
fmt_d = "$%d" + deg_mark + "$"
325+
fmt_ds = r"$%d.%s" + deg_mark + "$"
338326

327+
# %s for sign
328+
fmt_d_m = r"$%s%d" + deg_mark + "\,%02d" + min_mark+"$"
329+
fmt_d_ms = r"$%s%d" + deg_mark + "\,%02d.%s" + min_mark+"$"
339330

340-
fmt_d_m_partial = "$%s%d"+deg_mark+"\,%02d"+min_mark+"\,"
341-
fmt_s_partial = "%02d"+sec_mark+"$"
342-
fmt_ss_partial = "%02d.\!\!"+sec_mark+"%s$"
343-
331+
fmt_d_m_partial = "$%s%d" + deg_mark + "\,%02d" + min_mark + "\,"
332+
fmt_s_partial = "%02d" + sec_mark + "$"
333+
fmt_ss_partial = "%02d.%s" + sec_mark + "$"
344334

345335
def __call__(self, direction, factor, values): # hour
346336
return FormatterDMS.__call__(self, direction, factor, np.asarray(values)/15.)
@@ -426,50 +416,3 @@ def _adjust_extremes(self, lon_min, lon_max, lat_min, lat_max):
426416
lat_max = min(max0, lat_max)
427417

428418
return lon_min, lon_max, lat_min, lat_max
429-
430-
431-
432-
433-
434-
if __name__ == "__main__":
435-
#test2()
436-
#print select_step360(21.2, 33.3, 5)
437-
#print select_step360(20+21.2/60., 21+33.3/60., 5)
438-
#print select_step360(20.5+21.2/3600., 20.5+33.3/3600., 5)
439-
440-
# test threshold factor
441-
print(select_step360(20.5+11.2/3600., 20.5+53.3/3600., 5,
442-
threshold_factor=60))
443-
444-
print(select_step360(20.5+11.2/3600., 20.5+53.3/3600., 5,
445-
threshold_factor=1))
446-
447-
fmt = FormatterDMS()
448-
#print fmt("left", 60, [0, -30, -60])
449-
print(fmt("left", 600, [12301, 12302, 12303]))
450-
451-
print(select_step360(20.5+21.2/3600., 20.5+21.4/3600., 5))
452-
print(fmt("left", 36000, [738210, 738215, 738220]))
453-
print(fmt("left", 360000, [7382120, 7382125, 7382130]))
454-
print(fmt("left", 1., [45, 46, 47]))
455-
print(fmt("left", 10., [452, 453, 454]))
456-
457-
if 0:
458-
print(select_step360(20+21.2/60., 21+33.3/60., 5))
459-
print(select_step360(20.5+21.2/3600., 20.5+33.3/3600., 5))
460-
print(select_step360(20+21.2/60., 20+53.3/60., 5))
461-
462-
###
463-
levs, n, factor = select_step360(20.5+21.2/3600., 20.5+27.25/3600., 5)
464-
levs = levs * 0.1
465-
fmt = FormatterDMS()
466-
#print fmt("left", 60, [0, -30, -60])
467-
print(fmt("left", factor, levs))
468-
469-
470-
print(select_step(-180, 180, 10, hour=False))
471-
print(select_step(-12, 12, 10, hour=True))
472-
473-
fmt = FormatterDMS()
474-
#print fmt("left", 60, [0, -30, -60])
475-
print(fmt("left", 3600, [0, -30, -60]))

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy