Skip to content

Commit d268abf

Browse files
author
productivememberofsociety666
committed
Changed twin* functions so the corresponding host axes are invisible; updated _remove_method.
1 parent c723466 commit d268abf

File tree

2 files changed

+22
-50
lines changed

2 files changed

+22
-50
lines changed

lib/mpl_toolkits/axes_grid1/parasite_axes.py

+22-50
Original file line numberDiff line numberDiff line change
@@ -326,19 +326,17 @@ def twinx(self, axes_class=None):
326326

327327
ax2 = parasite_axes_class(self, sharex=self, frameon=False)
328328
self.parasites.append(ax2)
329-
ax2._remove_method = lambda h: self.parasites.remove(h)
330-
331-
# for normal axes
332329

333-
self.axis["right"].toggle(all=False)
334-
self.axis["right"].line.set_visible(True)
330+
self.axis["right"].set_visible(False)
335331

336332
ax2.axis["right"].set_visible(True)
337-
ax2.axis["left","top", "bottom"].toggle(all=False)
338-
ax2.axis["left","top", "bottom"].line.set_visible(False)
333+
ax2.axis["left", "top", "bottom"].set_visible(False)
339334

340-
ax2.axis["right"].toggle(all=True)
341-
ax2.axis["right"].line.set_visible(False)
335+
def _remove_method(h):
336+
self.parasites.remove(h)
337+
self.axis["right"].set_visible(True)
338+
self.axis["right"].toggle(ticklabels=False, label=False)
339+
ax2._remove_method = _remove_method
342340

343341
return ax2
344342

@@ -361,17 +359,17 @@ def twiny(self, axes_class=None):
361359

362360
ax2 = parasite_axes_class(self, sharey=self, frameon=False)
363361
self.parasites.append(ax2)
364-
ax2._remove_method = lambda h: self.parasites.remove(h)
365362

366-
self.axis["top"].toggle(all=False)
367-
self.axis["top"].line.set_visible(True)
363+
self.axis["top"].set_visible(False)
368364

369365
ax2.axis["top"].set_visible(True)
370-
ax2.axis["left","right", "bottom"].toggle(all=False)
371-
ax2.axis["left","right", "bottom"].line.set_visible(False)
366+
ax2.axis["left", "right", "bottom"].set_visible(False)
372367

373-
ax2.axis["top"].toggle(all=True)
374-
ax2.axis["top"].line.set_visible(False)
368+
def _remove_method(h):
369+
self.parasites.remove(h)
370+
self.axis["top"].set_visible(True)
371+
self.axis["top"].toggle(ticklabels=False, label=False)
372+
ax2._remove_method = _remove_method
375373

376374
return ax2
377375

@@ -404,42 +402,16 @@ def twin(self, aux_trans=None, axes_class=None):
404402
self.parasites.append(ax2)
405403
ax2._remove_method = lambda h: self.parasites.remove(h)
406404

405+
self.axis["top", "right"].set_visible(False)
407406

408-
# for normal axes
409-
#self.yaxis.tick_left()
410-
#self.xaxis.tick_bottom()
411-
#ax2.yaxis.tick_right()
412-
#ax2.xaxis.set_visible(True)
413-
#ax2.yaxis.set_visible(True)
414-
415-
#ax2.yaxis.set_label_position('right')
416-
##ax2.xaxis.tick_top()
417-
#ax2.xaxis.set_label_position('top')
418-
419-
420-
self.axis["top","right"].toggle(all=False)
421-
self.axis["top","right"].line.set_visible(False)
422-
#self.axis["left","bottom"].toggle(label=True)
423-
424-
ax2.axis["top","right"].set_visible(True)
425-
426-
ax2.axis["bottom","left"].toggle(all=False)
427-
ax2.axis["bottom","left"].line.set_visible(False)
428-
429-
ax2.axis["top","right"].toggle(all=True)
430-
ax2.axis["top","right"].line.set_visible(True)
431-
432-
433-
# # for axisline axes
434-
# self._axislines["right"].set_visible(False)
435-
# self._axislines["top"].set_visible(False)
436-
# ax2._axislines["left"].set_visible(False)
437-
# ax2._axislines["bottom"].set_visible(False)
407+
ax2.axis["top", "right"].set_visible(True)
408+
ax2.axis["left", "bottom"].set_visible(False)
438409

439-
# ax2._axislines["right"].set_visible(True)
440-
# ax2._axislines["top"].set_visible(True)
441-
# ax2._axislines["right"].major_ticklabels.set_visible(True)
442-
# ax2._axislines["top"].major_ticklabels.set_visible(True)
410+
def _remove_method(h):
411+
self.parasites.remove(h)
412+
self.axis["top", "right"].set_visible(True)
413+
self.axis["top", "right"].toggle(ticklabels=False, label=False)
414+
ax2._remove_method = _remove_method
443415

444416
return ax2
445417

0 commit comments

Comments
 (0)