8000 Cleanup · matplotlib/matplotlib@a81c1f0 · GitHub
[go: up one dir, main page]

Skip to content

Commit a81c1f0

Browse files
Cleanup
1 parent 8d7b9f1 commit a81c1f0

File tree

3 files changed

+16
-19
lines changed

3 files changed

+16
-19
lines changed

doc/users/next_whats_new/3d_axis_positions.rst

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@ You can now specify the positions of ticks and axis labels for 3D plots.
99
import matplotlib.pyplot as plt
1010

1111
positions = ['default', 'upper', 'lower', 'both', 'none']
12-
fig, axs = plt.subplots(1, 5, subplot_kw={'projection': '3d'})
12+
fig, axs = plt.subplots(1, 5, figsize=(20, 3),
13+
subplot_kw={'projection': '3d'})
1314
for ax, pos in zip(axs, positions):
1415
for axis in ax.xaxis, ax.yaxis, ax.zaxis:
15-
axis._label_position = pos
16-
axis._tick_position = pos
17-
ax.set(xlabel='x', ylabel='y', zlabel='z', title=pos)
16+
axis.set_label_position(pos)
17+
axis.set_ticks_position(pos)
18+
ax.set(xlabel='x', ylabel='y', zlabel='z', title=f'position="{pos}"')

lib/mpl_toolkits/mplot3d/axis3d.py

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ def __init__(self, *args, **kwargs):
7777
name = self.axis_name
7878

7979
self._label_position = 'default'
80-
self._tick_position = 'default'
80+
self._ticks_position = 'default'
8181

8282
# This is a temporary member variable.
8383
# Do not depend on this existing in future releases!
@@ -197,7 +197,7 @@ def set_ticks_position(self, position):
197197
"""
198198
_api.check_in_list(['lower', 'upper', 'both', 'default', 'none'],
199199
position=position)
200-
self._tick_position = position
200+
self._ticks_position = position
201201

202202
def get_ticks_position(self):
203203
"""
@@ -208,7 +208,7 @@ def get_ticks_position(self):
208208
position : {'lower', 'upper', 'both', 'default', 'none'}
209209
The position of the bolded axis lines, ticks, and tick labels.
210210
"""
211-
return self._tick_position
211+
return self._ticks_position
212212

213213
def set_label_position(self, position):
214214
"""
@@ -319,8 +319,7 @@ def _get_axis_line_edge_points(self, minmax, maxmin, position=None):
319319
juggled = self._axinfo["juggled"]
320320
edge_point_0 = mm[0].copy() # origin point
321321

322-
if ( (position == 'lower'
323-
and mm[1][juggled[-1]] < mm[0][juggled[-1]])
322+
if ((position == 'lower' and mm[1][juggled[-1]] < mm[0][juggled[-1]])
324323
or (position == 'upper'
325324
and mm[1][juggled[-1]] > mm[0][juggled[-1]])):
326325
edge_point_0[juggled[-1]] = mm[1][juggled[-1]]
@@ -341,8 +340,10 @@ def _get_all_axis_line_edge_points(self, minmax, maxmin, position=None):
341340
edgep1s = [edgep1]
342341
edgep2s = [edgep2]
343342
else:
344-
edgep1_l, edgep2_l = self._get_axis_line_edge_points(minmax, maxmin, position='lower')
345-
edgep1_u, edgep2_u = self._get_axis_line_edge_points(minmax, maxmin, position='upper')
343+
edgep1_l, edgep2_l = self._get_axis_line_edge_points(minmax, maxmin,
344+
position='lower')
345+
edgep1_u, edgep2_u = self._get_axis_line_edge_points(minmax, maxmin,
346+
position='upper')
346347
if position in ('lower', 'both'):
347348
edgep1s.append(edgep1_l)
348349
edgep2s.append(edgep2_l)
@@ -396,15 +397,13 @@ def draw_pane(self, renderer):
396397

397398
renderer.close_group('pane3d')
398399

399-
400400
def _axmask(self):
401401
info = self._axinfo
402402
index = info["i"]
403403
axmask = [True, True, True]
404404
axmask[index] = False
405405
return axmask
406406

407-
408407
def _draw_ticks(self, renderer, edgep1, centers, deltas, highs,
409408
deltas_per_point):
410409
ticks = self._update_ticks()
@@ -445,7 +444,6 @@ def _draw_ticks(self, renderer, edgep1, centers, deltas, highs,
445444
tick.tick1line.set_linewidth(tick_lw[tick._major])
446445
tick.draw(renderer)
447446

448-
449447
def _draw_offset_text(self, renderer, edgep1, edgep2, labeldeltas, centers,
450448
highs, pep, dx, dy):
451449
# Get general axis information:
@@ -516,7 +514,6 @@ def _draw_offset_text(self, renderer, edgep1, edgep2, labeldeltas, centers,
516514
self.offsetText.set_ha(align)
517515
self.offsetText.draw(renderer)
518516

519-
520517
def _draw_labels(self, renderer, edgep1, edgep2, labeldeltas, centers,
521518
dx, dy):
522519
info = self._axinfo
@@ -534,7 +531,6 @@ def _draw_labels(self, renderer, edgep1, edgep2, labeldeltas, centers,
534531
self.label.set_rotation_mode(info['label']['rotation_mode'])
535532
self.label.draw(renderer)
536533

537-
538534
@artist.allow_rasterization
539535
def draw(self, renderer):
540536
self.label._transform = self.axes.transData
@@ -558,7 +554,7 @@ def draw(self, renderer):
558554
maxmin = np.where(~highs, maxs, mins) # "opposite" corner near camera
559555

560556
for edgep1, edgep2 in zip(*self._get_all_axis_line_edge_points(
561-
minmax, maxmin, self._tick_position)):
557+
minmax, maxmin, self._ticks_position)):
562558
# Project the edge points along the current position
563559
pep = proj3d._proj_trans_points([edgep1, edgep2], self.axes.M)
564560
pep = np.asarray(pep)

lib/mpl_toolkits/mplot3d/tests/test_axes3d.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1009,8 +1009,8 @@ def test_axis_positions():
10091009
fig, axs = plt.subplots(2, 2, subplot_kw={'projection': '3d'})
10101010
for ax, pos in zip(axs.flatten(), positions):
10111011
for axis in ax.xaxis, ax.yaxis, ax.zaxis:
1012-
axis._label_position = pos
1013-
axis._tick_position = pos
1012+
axis.set_label_position(pos)
1013+
axis.set_ticks_position(pos)
10141014
ax.set(xlabel='x', ylabel='y', zlabel='z', title=pos)
10151015

10161016

0 commit comments

Comments
 (0)
0