From ffe5cbcae71f1158c9da8cd4330c43a71c5cf0c0 Mon Sep 17 00:00:00 2001 From: astromancer Date: Mon, 5 Jun 2023 13:42:26 +0200 Subject: [PATCH 01/12] DEV: add `Bar3DCollection` for 3d bar graphs FIX: add camera distance functions FIX: spelling FIX: logic error with cmap DEV: rename function FIX: remove duplicate function --- lib/mpl_toolkits/mplot3d/art3d.py | 414 +++++++++++++++++++++++++++++- 1 file changed, 413 insertions(+), 1 deletion(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 483fd09be163..ea471ba37f4b 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -22,6 +22,72 @@ from . import proj3d +# shape (6, 4, 3) +# All faces are oriented facing outwards - when viewed from the +# outside, their vertices are in a counterclockwise ordering. +CUBOID = np.array([ + # -z + ( + (0, 0, 0), + (0, 1, 0), + (1, 1, 0), + (1, 0, 0), + ), + # +z + ( + (0, 0, 1), + (1, 0, 1), + (1, 1, 1), + (0, 1, 1), + ), + # -y + ( + (0, 0, 0), + (1, 0, 0), + (1, 0, 1), + (0, 0, 1), + ), + # +y + ( + (0, 1, 0), + (0, 1, 1), + (1, 1, 1), + (1, 1, 0), + ), + # -x + ( + (0, 0, 0), + (0, 0, 1), + (0, 1, 1), + (0, 1, 0), + ), + # +x + ( + (1, 0, 0), + (1, 1, 0), + (1, 1, 1), + (1, 0, 1), + ), +]) + +CAMERA_VIEW_QUADRANT_TO_CUBE_FACE_ZORDER = { + # -z, +z, -y, +y, -x, +x + # 0, 1, 2, 3, 4, 5 + +# Base hexagon for creating prisms (HexBar3DCollection). +# sides are ordered anti-clockwise from left: ['W', 'SW', 'SE', 'E', 'NE', 'NW'] +HEXAGON = np.array([ + [-2, 1], + [-2, -1], + [0, -2], + [2, -1], + [2, 1], + [0, 2] +]) / 4 + +# ---------------------------------------------------------------------------- # + + def _norm_angle(a): """Return the given angle normalized to -180 < *a* <= 180 degrees.""" a = (a + 360) % 360 @@ -1443,7 +1509,7 @@ def set_alpha(self, alpha): pass try: self._edgecolors = mcolors.to_rgba_array( - self._edgecolor3d, self._alpha) + self._edgecolor3d, self._alpha) except (AttributeError, TypeError, IndexError): pass self.stale = True @@ -1464,6 +1530,254 @@ def get_edgecolor(self): self.do_3d_projection() return np.asarray(self._edgecolors2d) +class Bar3DCollection(Poly3DCollection): + """ + Bars (rectangular prisms) with constant square cross section, bases located + on z-plane at *z0*, arranged in a regular grid at *x*, *y* locations and + with height *z - z0*. + """ + + _n_faces = 6 + + def __init__(self, x, y, z, dxy='0.8', z0=0, shade=True, lightsource=None, + cmap=None, **kws): + # + x, y, z, z0 = np.ma.atleast_1d(x, y, z, z0) + assert x.shape == y.shape == z.shape + + # array for bar positions, height (x, y, z) + self._xyz = np.empty((3, *x.shape)) + for i, p in enumerate((x, y, z)): + if p is not None: + self._xyz[i] = p + + # bar width and breadth + self.dxy = dxy + self.dx, self.dy = self._resolve_dx_dy(dxy) + + if z0 is not None: + self.z0 = float(z0) + + # Shade faces by angle to light source + self._original_alpha = kws.pop('alpha', 1) + self._shade = bool(shade) + # resolve light source + if lightsource is None: + # chosen for backwards-compatibility + lightsource = CLASSIC_LIGHTSOURCE + else: + assert isinstance(lightsource, mcolors.LightSource) + self._lightsource = lightsource + + # resolve cmap + if cmap is not None: + COLOR_KWS = {'color', 'facecolor', 'facecolors'} + if (ckw := COLOR_KWS.intersection(kws)): + warnings.warn(f'Ignoring cmap since {ckw!r} provided.') + else: + kws.update(cmap=cmap) + + # init Poly3DCollection + # rectangle side panel vertices + Poly3DCollection.__init__(self, self._compute_verts(), **kws) + + if cmap: + self.set_array(self.z.ravel()) + + def _resolve_dx_dy(self, dxy): + + d = list(cbook.duplicate_if_scalar(dxy)) + + for i, xy in enumerate(self.xy): + # if dxy a number -> use it directly else if str, + # scale dxy to data step. + # get x/y step along axis -1/-2 (x/y considered constant along axis + # -2/-1) + data_step = _get_grid_step(xy, -i - 1) if isinstance(d[i], str) else 1 + d[i] = float(d[i]) * data_step + + dx, dy = d + assert (dx != 0) + assert (dy != 0) + + return dx, dy + + @property + def x(self): + return self._xyz[0] + + @x.setter + def x(self, x): + self.set_data(x=x) + + @property + def y(self): + return self._xyz[1] + + @y.setter + def y(self, y): + self.set_data(y=y) + + @property + def xy(self): + return self._xyz[:2] + + @property + def z(self): + return self._xyz[2] + + def set_z(self, z, z0=None, clim=None): + self.set_data(z=z, z0=z0, clim=clim) + + def set_z0(self, z0): + self.z0 = float(z0) + super().set_verts(self._compute_verts()) + + def set_data(self, x=None, y=None, z=None, z0=None, clim=None): + # self._xyz = np.atleast_3d(xyz) + assert not all(map(is_none, (x, y, z, z0))) + + if (x is not None) or (y is not None): + self.dx, self.dy = self._resolve_dx_dy(self.dxy) + + for i, p in enumerate((x, y, z)): + if p is not None: + self._xyz[i] = p + + for i, p in enumerate((x, y, z)): + if p is not None: + self._xyz[i] = p + + if z0 is not None: + self.z0 = float(z0) + + # compute points + super().set_verts(self._compute_verts()) + self.set_array(z := self.z.ravel()) + + if clim is None or clim is True: + clim = (z.min(), z.max()) + + if clim is not False: + self.set_clim(*clim) + + if not self.axes: + return + + if self.axes.M is not None: + self.do_3d_projection() + + def _compute_verts(self): + + x, y = self.xy + z = np.full(x.shape, self.z0) + + # indexed by [bar, face, vertex, axis] + xyz = np.expand_dims(np.moveaxis([x, y, z], 0, -1), (-2, -3)) + dxyz = np.empty_like(xyz) + dxyz[..., :2] = np.array([[[self.dx]], [[self.dy]]]).T + dxyz[..., 2] = np.array(self.z - self.z0)[..., np.newaxis, np.newaxis] + polys = xyz + dxyz * CUBOID[np.newaxis, :] # (n, 6, 4, 3) + + # collapse the first two axes + return polys.reshape((-1, 4, 3)) # *polys.shape[-2:] + + def do_3d_projection(self): + """ + Perform the 3D projection for this object. + """ + if self._A is not None: + # force update of color mapping because we re-order them + # below. If we do not do this here, the 2D draw will call + # this, but we will never port the color mapped values back + # to the 3D versions. + # + # We hold the 3D versions in a fixed order (the order the user + # passed in) and sort the 2D version by view depth. + self.update_scalarmappable() + if self._face_is_mapped: + self._facecolor3d = self._facecolors + if self._edge_is_mapped: + self._edgecolor3d = self._edgecolors + + txs, tys, tzs = proj3d._proj_transform_vec(self._vec, self.axes.M) + xyzlist = [(txs[sl], tys[sl], tzs[sl]) for sl in self._segslices] + + # get panel facecolors + cface, cedge = self._compute_colors(xyzlist, self._lightsource) + + if xyzlist: + zorder = self._compute_zorder() + occluded = np.isnan(zorder) + + z_segments_2d = sorted( + ((zo, np.column_stack([xs, ys]), fc, ec, idx) + for idx, (ok, zo, (xs, ys, _), fc, ec) + in enumerate(zip(~occluded, zorder, xyzlist, cface, cedge)) + if ok), + key=lambda x: x[0], reverse=True) + + _, segments_2d, self._facecolors2d, self._edgecolors2d, idxs = \ + zip(*z_segments_2d) + else: + segments_2d = [] + self._facecolors2d = np.empty((0, 4)) + self._edgecolors2d = np.empty((0, 4)) + idxs = [] + + if self._codes3d is None: + PolyCollection.set_verts(self, segments_2d, self._closed) + else: + codes = [self._codes3d[idx] for idx in idxs] + PolyCollection.set_verts_and_codes(self, segments_2d, codes) + + if len(self._edgecolor3d) != len(cface): + self._edgecolors2d = self._edgecolor3d + + # Return zorder value + if self._sort_zpos is not None: + zvec = np.array([[0], [0], [self._sort_zpos], [1]]) + ztrans = proj3d._proj_transform_vec(zvec, self.axes.M) + return ztrans[2][0] + + return np.min(tzs) if tzs.size > 0 else np.nan + + def _compute_colors(self, xyzlist, lightsource): + # This extra fuss is to re-order face / edge colors + cface = self._facecolor3d + cedge = self._edgecolor3d + n, nc = len(xyzlist), len(cface) + + if (nc == 1) or (nc * self._n_faces == n): + cface = cface.repeat(n // nc, axis=0) + if self._shade: + verts = self._compute_verts() + normals = _generate_normals(verts) + cface = _shade_colors(cface, normals, lightsource) + + if self._original_alpha is not None: + cface[:, -1] = self._original_alpha + + if len(cface) != n: + raise ValueError + # cface = cface.repeat(n, axis=0) + + if len(cedge) != n: + cedge = cface if len(cedge) == 0 else cedge.repeat(n, axis=0) + + return cface, cedge + + def _compute_zorder(self): + # sort by depth (furthest drawn first) + zorder = camera_distance(self.axes, *self.xy) + zorder = (zorder - zorder.min()) / (np.ptp(zorder) or 1) + zorder = zorder.ravel() * len(zorder) + face_zorder = get_prism_face_zorder(self.axes, + self._original_alpha == 1, + self._n_faces - 2) + return (zorder[..., None] + face_zorder).ravel() + + def poly_collection_2d_to_3d(col, zs=0, zdir='z', axlim_clip=False): """ @@ -1668,3 +1982,101 @@ def norm(x): colors = np.asanyarray(color).copy() return colors + + +def camera_distance(ax, x, y, z=None): + z = np.zeros_like(x) if z is None else z + # camera = xyz(ax) + # print(camera) + return np.sqrt(np.square( + # location of points + [x, y, z] - + # camera position in xyz + np.array(sph2cart(*_camera_position(ax)), ndmin=3).T + ).sum(0)) + + +def sph2cart(r, theta, phi): + r_sinθ = r * np.sin(theta) + return (r_sinθ * np.cos(phi), + r_sinθ * np.sin(phi), + r * np.cos(theta)) + + +def _camera_position(ax): + """ + Returns the camera position for 3D axes in spherical coordinates. + """ + r = np.square(np.max([ax.get_xlim(), + ax.get_ylim()], 1)).sum() + theta, phi = np.radians((90 - ax.elev, ax.azim)) + return r, theta, phi + + +def _get_grid_step(x, axis=0): + # for data arrange in a regular grid, get the size of the data step by + # looking for the first non-zero step along an axis. + # If axis is singular, return 1 + + # deal with singular dimension (this ignores axis param) + if x.ndim == 1: + if d := next(filter(None, map(np.diff, cbook.pairwise(x))), None): + return d + + if x.shape[axis % x.ndim] == 1: + return 1 + + key = [0] * x.ndim + key[axis] = np.s_[:2] + return np.diff(x[tuple(key)]).item() + + +def get_prism_face_zorder(ax, mask_occluded=True, nfaces=4): + # compute panel sequence based on camera position + + # these index positions are determined by the order of the faces returned + # by `_compute_verts` + base, top = nfaces, nfaces + 1 + if ax.elev < 0: + base, top = top, base + + # this is to figure out which of the vertical faces to draw first + angle_step = 360 / nfaces + zero = -angle_step / 2 + flip = (np.abs(ax.elev) % 180 > 90) + sector = (((ax.azim - zero + 180 * flip) % 360) / angle_step) % nfaces + + # get indices for panels in plot order + first = int(sector) + second = (first + 1) % nfaces + third = (first + nfaces - 1) % nfaces + if (sector - first) < 0.5: + second, third = third, second + + sequence = [base, first, second, third] + sequence = [*sequence, *np.setdiff1d(np.arange(nfaces), sequence), top] + + # reverse the panel sequence if elevation has flipped the axes by 180 multiple + if np.abs(ax.elev) % 360 > 180: + sequence = sequence[::-1] + + # normalize zorder to < 1 + zorder = np.argsort(sequence) / len(sequence) + + if mask_occluded: + # we don't need to draw back panels since they are behind others + zorder[zorder < 0.5] = np.nan + + # This order is determined by the ordering of `CUBOID` and `HEXAGON` globals + # names = {4: ['+x', '+y', '-x', '-y', '-z', '+z'], + # 6: ['W', 'SW', 'SE', 'E', 'NE', 'NW', 'BASE', 'TOP']}[nfaces] + # print('', + # f'Panel draw sequence ({ax.azim = :}, {ax.elev = :}):', + # f'{sector = :}', + # f'{sequence = :}', + # f'names = {list(np.take(names, sequence))}', + # f'{zorder = :}', + # f'zorder = {pformat(dict(zip(*cosort(zorder, names)[::-1])))}', + # sep='\n') + + return zorder From 90a164d8db49a49c393d0c97feb60f53f3dfae8e Mon Sep 17 00:00:00 2001 From: astromancer Date: Fri, 16 Jun 2023 13:55:57 +0200 Subject: [PATCH 02/12] DEV: add `HexBar3DCollection` for plotting hexagonal prisms MNT: add stub def for newly added functions FIX: `hexbin` to return grid info FIX: add omitted function, import, remove whitespace FIX: yscaling MNT: move `hexbin` helper to `cbook` FIX: whitespace FIX: whitespace FIX: stub FIX spelling (again!) FIX: whitespace --- lib/matplotlib/axes/_axes.py | 105 ++-------------------- lib/matplotlib/cbook.py | 141 +++++++++++++++++++++++++++++- lib/matplotlib/cbook.pyi | 13 +++ lib/mpl_toolkits/mplot3d/art3d.py | 113 +++++++++++++++++------- 4 files changed, 239 insertions(+), 133 deletions(-) diff --git a/lib/matplotlib/axes/_axes.py b/lib/matplotlib/axes/_axes.py index b4ed7ae22d35..cbb6daa887b2 100644 --- a/lib/matplotlib/axes/_axes.py +++ b/lib/matplotlib/axes/_axes.py @@ -5507,112 +5507,19 @@ def reduce_C_function(C: array) -> float x, y, C = cbook.delete_masked_points(x, y, C) - # Set the size of the hexagon grid - if np.iterable(gridsize): - nx, ny = gridsize - else: - nx = gridsize - ny = int(nx / math.sqrt(3)) # Count the number of data in each hexagon x = np.asarray(x, float) y = np.asarray(y, float) - # Will be log()'d if necessary, and then rescaled. - tx = x - ty = y - - if xscale == 'log': - if np.any(x <= 0.0): - raise ValueError( - "x contains non-positive values, so cannot be log-scaled") - tx = np.log10(tx) - if yscale == 'log': - if np.any(y <= 0.0): - raise ValueError( - "y contains non-positive values, so cannot be log-scaled") - ty = np.log10(ty) - if extent is not None: - xmin, xmax, ymin, ymax = extent - if xmin > xmax: - raise ValueError("In extent, xmax must be greater than xmin") - if ymin > ymax: - raise ValueError("In extent, ymax must be greater than ymin") - else: - xmin, xmax = (tx.min(), tx.max()) if len(x) else (0, 1) - ymin, ymax = (ty.min(), ty.max()) if len(y) else (0, 1) - - # to avoid issues with singular data, expand the min/max pairs - xmin, xmax = mtransforms.nonsingular(xmin, xmax, expander=0.1) - ymin, ymax = mtransforms.nonsingular(ymin, ymax, expander=0.1) - - nx1 = nx + 1 - ny1 = ny + 1 - nx2 = nx - ny2 = ny - n = nx1 * ny1 + nx2 * ny2 - - # In the x-direction, the hexagons exactly cover the region from - # xmin to xmax. Need some padding to avoid roundoff errors. - padding = 1.e-9 * (xmax - xmin) - xmin -= padding - xmax += padding + (*offsets, accum), (xmin, xmax), (ymin, ymax), (nx, ny) = cbook.hexbin( + x, y, C, gridsize, xscale, yscale, extent, reduce_C_function, mincnt + ) + offsets = np.transpose(offsets) sx = (xmax - xmin) / nx sy = (ymax - ymin) / ny - # Positions in hexagon index coordinates. - ix = (tx - xmin) / sx - iy = (ty - ymin) / sy - ix1 = np.round(ix).astype(int) - iy1 = np.round(iy).astype(int) - ix2 = np.floor(ix).astype(int) - iy2 = np.floor(iy).astype(int) - # flat indices, plus one so that out-of-range points go to position 0. - i1 = np.where((0 <= ix1) & (ix1 < nx1) & (0 <= iy1) & (iy1 < ny1), - ix1 * ny1 + iy1 + 1, 0) - i2 = np.where((0 <= ix2) & (ix2 < nx2) & (0 <= iy2) & (iy2 < ny2), - ix2 * ny2 + iy2 + 1, 0) - - d1 = (ix - ix1) ** 2 + 3.0 * (iy - iy1) ** 2 - d2 = (ix - ix2 - 0.5) ** 2 + 3.0 * (iy - iy2 - 0.5) ** 2 - bdist = (d1 < d2) - - if C is None: # [1:] drops out-of-range points. - counts1 = np.bincount(i1[bdist], minlength=1 + nx1 * ny1)[1:] - counts2 = np.bincount(i2[~bdist], minlength=1 + nx2 * ny2)[1:] - accum = np.concatenate([counts1, counts2]).astype(float) - if mincnt is not None: - accum[accum < mincnt] = np.nan + + if C is None: C = np.ones(len(x)) - else: - # store the C values in a list per hexagon index - Cs_at_i1 = [[] for _ in range(1 + nx1 * ny1)] - Cs_at_i2 = [[] for _ in range(1 + nx2 * ny2)] - for i in range(len(x)): - if bdist[i]: - Cs_at_i1[i1[i]].append(C[i]) - else: - Cs_at_i2[i2[i]].append(C[i]) - if mincnt is None: - mincnt = 1 - accum = np.array( - [reduce_C_function(acc) if len(acc) >= mincnt else np.nan - for Cs_at_i in [Cs_at_i1, Cs_at_i2] - for acc in Cs_at_i[1:]], # [1:] drops out-of-range points. - float) - - good_idxs = ~np.isnan(accum) - - offsets = np.zeros((n, 2), float) - offsets[:nx1 * ny1, 0] = np.repeat(np.arange(nx1), ny1) - offsets[:nx1 * ny1, 1] = np.tile(np.arange(ny1), nx1) - offsets[nx1 * ny1:, 0] = np.repeat(np.arange(nx2) + 0.5, ny2) - offsets[nx1 * ny1:, 1] = np.tile(np.arange(ny2), nx2) + 0.5 - offsets[:, 0] *= sx - offsets[:, 1] *= sy - offsets[:, 0] += xmin - offsets[:, 1] += ymin - # remove accumulation bins with no data - offsets = offsets[good_idxs, :] - accum = accum[good_idxs] polygon = [sx, sy / 3] * np.array( [[.5, -.5], [.5, .5], [0., 1.], [-.5, .5], [-.5, -.5], [0., -1.]]) diff --git a/lib/matplotlib/cbook.py b/lib/matplotlib/cbook.py index a09780965b0c..e5c6e31cbf2a 100644 --- a/lib/matplotlib/cbook.py +++ b/lib/matplotlib/cbook.py @@ -566,7 +566,32 @@ def is_scalar_or_string(val): return isinstance(val, str) or not np.iterable(val) -def get_sample_data(fname, asfileobj=True): +def duplicate_if_scalar(obj, n=2, raises=True): + """Ensure object size or duplicate into a list if necessary.""" + + if is_scalar_or_string(obj): + return [obj] * n + + size = len(obj) + if size == 0: + if raises: + raise ValueError(f'Cannot duplicate empty {type(obj)}.') + return [obj] * n + + if size == 1: + return list(obj) * n + + if (size != n) and raises: + raise ValueError( + f'Input object of type {type(obj)} has incorrect size. Expected ' + f'either a scalar type object, or a Container with length in {{1, ' + f'{n}}}.' + ) + + return obj + + +def get_sample_data(fname, asfileobj=True, *, np_load=True): """ Return a sample data file. *fname* is a path relative to the :file:`mpl-data/sample_data` directory. If *asfileobj* is `True` @@ -1430,6 +1455,120 @@ def _reshape_2D(X, name): return result +def hexbin(x, y, C=None, gridsize=100, + xscale='linear', yscale='linear', extent=None, + reduce_C_function=np.mean, mincnt=None): + + # local import to avoid circular import + import matplotlib.transforms as mtransforms + + # Set the size of the hexagon grid + if np.iterable(gridsize): + nx, ny = gridsize + else: + nx = gridsize + ny = int(nx / math.sqrt(3)) + + # Will be log()'d if necessary, and then rescaled. + tx = x + ty = y + + if xscale == 'log': + if np.any(x <= 0.0): + raise ValueError( + "x contains non-positive values, so cannot be log-scaled") + tx = np.log10(tx) + if yscale == 'log': + if np.any(y <= 0.0): + raise ValueError( + "y contains non-positive values, so cannot be log-scaled") + ty = np.log10(ty) + if extent is not None: + xmin, xmax, ymin, ymax = extent + if xmin > xmax: + raise ValueError("In extent, xmax must be greater than xmin") + if ymin > ymax: + raise ValueError("In extent, ymax must be greater than ymin") + else: + xmin, xmax = (tx.min(), tx.max()) if len(x) else (0, 1) + ymin, ymax = (ty.min(), ty.max()) if len(y) else (0, 1) + + # to avoid issues with singular data, expand the min/max pairs + xmin, xmax = mtransforms.nonsingular(xmin, xmax, expander=0.1) + ymin, ymax = mtransforms.nonsingular(ymin, ymax, expander=0.1) + + nx1 = nx + 1 + ny1 = ny + 1 + nx2 = nx + ny2 = ny + n = nx1 * ny1 + nx2 * ny2 + + # In the x-direction, the hexagons exactly cover the region from + # xmin to xmax. Need some padding to avoid roundoff errors. + padding = 1.e-9 * (xmax - xmin) + xmin -= padding + xmax += padding + sx = (xmax - xmin) / nx + sy = (ymax - ymin) / ny + # Positions in hexagon index coordinates. + ix = (tx - xmin) / sx + iy = (ty - ymin) / sy + ix1 = np.round(ix).astype(int) + iy1 = np.round(iy).astype(int) + ix2 = np.floor(ix).astype(int) + iy2 = np.floor(iy).astype(int) + # flat indices, plus one so that out-of-range points go to position 0. + i1 = np.where((0 <= ix1) & (ix1 < nx1) & (0 <= iy1) & (iy1 < ny1), + ix1 * ny1 + iy1 + 1, 0) + i2 = np.where((0 <= ix2) & (ix2 < nx2) & (0 <= iy2) & (iy2 < ny2), + ix2 * ny2 + iy2 + 1, 0) + + d1 = (ix - ix1) ** 2 + 3.0 * (iy - iy1) ** 2 + d2 = (ix - ix2 - 0.5) ** 2 + 3.0 * (iy - iy2 - 0.5) ** 2 + bdist = (d1 < d2) + + if C is None: # [1:] drops out-of-range points. + counts1 = np.bincount(i1[bdist], minlength=1 + nx1 * ny1)[1:] + counts2 = np.bincount(i2[~bdist], minlength=1 + nx2 * ny2)[1:] + accum = np.concatenate([counts1, counts2]).astype(float) + if mincnt is not None: + accum[accum < mincnt] = np.nan + + else: + # store the C values in a list per hexagon index + Cs_at_i1 = [[] for _ in range(1 + nx1 * ny1)] + Cs_at_i2 = [[] for _ in range(1 + nx2 * ny2)] + for i in range(len(x)): + if bdist[i]: + Cs_at_i1[i1[i]].append(C[i]) + else: + Cs_at_i2[i2[i]].append(C[i]) + if mincnt is None: + mincnt = 1 + accum = np.array( + [reduce_C_function(acc) if len(acc) >= mincnt else np.nan + for Cs_at_i in [Cs_at_i1, Cs_at_i2] + for acc in Cs_at_i[1:]], # [1:] drops out-of-range points. + float) + + good_idxs = ~np.isnan(accum) + + offsets = np.zeros((n, 2), float) + offsets[:nx1 * ny1, 0] = np.repeat(np.arange(nx1), ny1) + offsets[:nx1 * ny1, 1] = np.tile(np.arange(ny1), nx1) + offsets[nx1 * ny1:, 0] = np.repeat(np.arange(nx2) + 0.5, ny2) + offsets[nx1 * ny1:, 1] = np.tile(np.arange(ny2), nx2) + 0.5 + offsets[:, 0] *= sx + offsets[:, 1] *= sy + offsets[:, 0] += xmin + offsets[:, 1] += ymin + # remove accumulation bins with no data + offsets = offsets[good_idxs, :] + accum = accum[good_idxs] + + return (*offsets.T, accum), (xmin, xmax), (ymin, ymax), (nx, ny) + + def violin_stats(X, method, points=100, quantiles=None): """ Return a list of dictionaries of data which can be used to draw a series diff --git a/lib/matplotlib/cbook.pyi b/lib/matplotlib/cbook.pyi index 6c2d9c303eb2..9d80c14ba435 100644 --- a/lib/matplotlib/cbook.pyi +++ b/lib/matplotlib/cbook.pyi @@ -73,6 +73,7 @@ def open_file_cm( encoding: str | None = ..., ) -> contextlib.AbstractContextManager[IO]: ... def is_scalar_or_string(val: Any) -> bool: ... +def duplicate_if_scalar(obj: Any, n: int = 2, raises: bool = True) -> list: ... @overload def get_sample_data( fname: str | os.PathLike, asfileobj: Literal[True] = ... @@ -83,6 +84,7 @@ def _get_data_path(*args: Path | str) -> Path: ... def flatten( seq: Iterable[Any], scalarp: Callable[[Any], bool] = ... ) -> Generator[Any, None, None]: ... +def pairwise(iterable: Iterable[Any]) -> Iterable[Any]: ... class _Stack(Generic[_T]): def __init__(self) -> None: ... @@ -132,6 +134,17 @@ ls_mapper_r: dict[str, str] def contiguous_regions(mask: ArrayLike) -> list[np.ndarray]: ... def is_math_text(s: str) -> bool: ... +def hexbin( + x: ArrayLike, + y: ArrayLike, + C: ArrayLike | None = None, + gridsize: int | tuple[int, int] = 100, + xscale: str = 'linear', + yscale: str = 'linear', + extent: ArrayLike | None = None, + reduce_C_function: Callable = np.mean, + mincnt: int | None = None +) -> tuple[tuple]: ... def violin_stats( X: ArrayLike, method: Callable, points: int = ..., quantiles: ArrayLike | None = ... ) -> list[dict[str, Any]]: ... diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index ea471ba37f4b..7d6b844adcb1 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -8,37 +8,36 @@ """ import math +import warnings +from contextlib import contextmanager import numpy as np -from contextlib import contextmanager - from matplotlib import ( _api, artist, cbook, colors as mcolors, lines, text as mtext, path as mpath, rcParams) from matplotlib.collections import ( Collection, LineCollection, PolyCollection, PatchCollection, PathCollection) from matplotlib.patches import Patch + from . import proj3d +# ---------------------------------------------------------------------------- # +# chosen for backwards-compatibility +CLASSIC_LIGHTSOURCE = mcolors.LightSource(azdeg=225, altdeg=19.4712) -# shape (6, 4, 3) +# Unit cube # All faces are oriented facing outwards - when viewed from the # outside, their vertices are in a counterclockwise ordering. +# shape (6, 4, 3) +# panel order: -x, -y, +x, +y, -z, +z CUBOID = np.array([ - # -z + # -x ( (0, 0, 0), - (0, 1, 0), - (1, 1, 0), - (1, 0, 0), - ), - # +z - ( (0, 0, 1), - (1, 0, 1), - (1, 1, 1), (0, 1, 1), + (0, 1, 0), ), # -y ( @@ -47,6 +46,13 @@ (1, 0, 1), (0, 0, 1), ), + # +x + ( + (1, 0, 0), + (1, 1, 0), + (1, 1, 1), + (1, 0, 1), + ), # +y ( (0, 1, 0), @@ -54,25 +60,23 @@ (1, 1, 1), (1, 1, 0), ), - # -x + # -z ( (0, 0, 0), - (0, 0, 1), - (0, 1, 1), (0, 1, 0), + (1, 1, 0), + (1, 0, 0), ), - # +x + # +z ( - (1, 0, 0), - (1, 1, 0), - (1, 1, 1), + (0, 0, 1), (1, 0, 1), + (1, 1, 1), + (0, 1, 1), ), + ]) -CAMERA_VIEW_QUADRANT_TO_CUBE_FACE_ZORDER = { - # -z, +z, -y, +y, -x, +x - # 0, 1, 2, 3, 4, 5 # Base hexagon for creating prisms (HexBar3DCollection). # sides are ordered anti-clockwise from left: ['W', 'SW', 'SE', 'E', 'NE', 'NW'] @@ -87,6 +91,10 @@ # ---------------------------------------------------------------------------- # +def is_none(*args): + for a in args: + yield a is None + def _norm_angle(a): """Return the given angle normalized to -180 < *a* <= 180 degrees.""" @@ -1530,6 +1538,7 @@ def get_edgecolor(self): self.do_3d_projection() return np.asarray(self._edgecolors2d) + class Bar3DCollection(Poly3DCollection): """ Bars (rectangular prisms) with constant square cross section, bases located @@ -1644,10 +1653,6 @@ def set_data(self, x=None, y=None, z=None, z0=None, clim=None): if p is not None: self._xyz[i] = p - for i, p in enumerate((x, y, z)): - if p is not None: - self._xyz[i] = p - if z0 is not None: self.z0 = float(z0) @@ -1778,6 +1783,49 @@ def _compute_zorder(self): return (zorder[..., None] + face_zorder).ravel() +class HexBar3DCollection(Bar3DCollection): + """ + Hexagonal prisms with uniform cross section, bases located on z-plane at *z0*, + arranged in a regular grid at *x*, *y* locations and height *z - z0*. + """ + _n_faces = 8 + + def _compute_verts(self): + + # scale the base hexagon + hexagon = np.array([self.dx, self.dy]).T * HEXAGON + xy_pairs = np.moveaxis([hexagon, np.roll(hexagon, -1, 0)], 0, 1) + xy_sides = xy_pairs[np.newaxis] + self.xy[:, None, None].T # (n,6,2,2) + + # sides (rectangle faces) + # Array of vertices of the faces composing the prism moving counter + # clockwise when looking from above starting at west (-x) facing panel. + # Vertex sequence is counter-clockwise when viewed from outside. + # shape: (n, [...], 6, 4, 3) + # indexed by [bars..., face, vertex, axis] + data_shape = np.shape(self.z) + shape = (*data_shape, 6, 2, 1) + z0 = np.full(shape, self.z0) + z1 = self.z0 + (self.z * np.ones(shape[::-1])).T + sides = np.concatenate( + [np.concatenate([xy_sides, z0], -1), + np.concatenate([xy_sides, z1], -1)[..., ::-1, :]], + axis=-2) # (n, [...], 6, 4, 3) + + # endcaps (hexagons) # (n, [...], 6, 3) + xy_ends = (self.xy[..., None] + hexagon.T[:, None]) + z0 = self.z0 * np.ones((1, *data_shape, 6)) + z1 = z0 + self.z[None, ..., None] + base = np.moveaxis(np.vstack([xy_ends, z0]), 0, -1) + top = np.moveaxis(np.vstack([xy_ends, z1]), 0, -1) + + # get list of arrays of polygon vertices + verts = [] + for s, b, t in zip(sides, base, top): + verts.extend([*s, b, t]) + + return verts + def poly_collection_2d_to_3d(col, zs=0, zdir='z', axlim_clip=False): """ @@ -1795,7 +1843,7 @@ def poly_collection_2d_to_3d(col, zs=0, zdir='z', axlim_clip=False): See `.get_dir_vector` for a description of the values. """ segments_3d, codes = _paths_to_3d_segments_with_codes( - col.get_paths(), zs, zdir) + col.get_paths(), zs, zdir) col.__class__ = Poly3DCollection col.set_verts_and_codes(segments_3d, codes) col.set_3d_properties() @@ -1930,7 +1978,7 @@ def _generate_normals(polygons): # optimization: polygons all have the same number of points, so can # vectorize n = polygons.shape[-2] - i1, i2, i3 = 0, n//3, 2*n//3 + i1, i2, i3 = 0, n // 3, 2 * n // 3 v1 = polygons[..., i1, :] - polygons[..., i2, :] v2 = polygons[..., i2, :] - polygons[..., i3, :] else: @@ -1940,7 +1988,7 @@ def _generate_normals(polygons): for poly_i, ps in enumerate(polygons): n = len(ps) ps = np.asarray(ps) - i1, i2, i3 = 0, n//3, 2*n//3 + i1, i2, i3 = 0, n // 3, 2 * n // 3 v1[poly_i, :] = ps[i1, :] - ps[i2, :] v2[poly_i, :] = ps[i2, :] - ps[i3, :] return np.cross(v1, v2) @@ -1986,17 +2034,16 @@ def norm(x): def camera_distance(ax, x, y, z=None): z = np.zeros_like(x) if z is None else z - # camera = xyz(ax) - # print(camera) return np.sqrt(np.square( # location of points [x, y, z] - # camera position in xyz - np.array(sph2cart(*_camera_position(ax)), ndmin=3).T + np.array(sph2cart(*_camera_position(ax)), ndmin=x.ndim + 1).T ).sum(0)) def sph2cart(r, theta, phi): + """Spherical to cartesian transform.""" r_sinθ = r * np.sin(theta) return (r_sinθ * np.cos(phi), r_sinθ * np.sin(phi), @@ -2021,7 +2068,7 @@ def _get_grid_step(x, axis=0): # deal with singular dimension (this ignores axis param) if x.ndim == 1: if d := next(filter(None, map(np.diff, cbook.pairwise(x))), None): - return d + return d.item() if x.shape[axis % x.ndim] == 1: return 1 From e3ab928af70c6b6dd4d46bfb6899cf5a7bd32746 Mon Sep 17 00:00:00 2001 From: astromancer Date: Fri, 14 Jun 2024 00:30:23 +0200 Subject: [PATCH 03/12] API: add api functions MNT: rename variadic keywords for consistency DOC: udate docstrings TST: refactor tests --- lib/mpl_toolkits/mplot3d/axes3d.py | 113 +++++++++++++++++++++++++++++ 1 file changed, 113 insertions(+) diff --git a/lib/mpl_toolkits/mplot3d/axes3d.py b/lib/mpl_toolkits/mplot3d/axes3d.py index 55b204022fb9..f4f2258b4200 100644 --- a/lib/mpl_toolkits/mplot3d/axes3d.py +++ b/lib/mpl_toolkits/mplot3d/axes3d.py @@ -3131,6 +3131,10 @@ def bar3d(self, x, y, z, dx, dy, dz, color=None, Any additional keyword arguments are passed onto `~.art3d.Poly3DCollection`. + See Also + -------- + mpl_toolkits.mplot3d.axes3d.Axes3D.bar3d_grid + Returns ------- collection : `~.art3d.Poly3DCollection` @@ -3237,6 +3241,115 @@ def bar3d(self, x, y, z, dx, dy, dz, color=None, return col + @_preprocess_data() + def bar3d_grid(self, x, y, z, dxy='0.8', z0=0, **kwargs): + """ + Generate a 3D barplot. + + This method creates three-dimensional barplot for bars on a regular + xy-grid and on the same level z-plane. Color of the bars can be + set uniquely, or cmap can be provided to map the bar heights *z* to + colors. + + Parameters + ---------- + x, y : array-like + The coordinates of the anchor point of the bars. + + z : array-like + The height of the bars. + + dxy : str, tuple[str], optional + Width of the bars as a fraction of the data step, by default '0.8' + + z0 : float + z-position of the base of the bars. All bars share the same base + value. + + data : indexable object, optional + DATA_PARAMETER_PLACEHOLDER + + **kwargs + Any additional keyword arguments are forwarded to + `~.art3d.Poly3DCollection`. + + See Also + -------- + mpl_toolkits.mplot3d.axes3d.Axes3D.bar3d + + Returns + ------- + bars : `~.art3d.Bar3DCollection` + A collection of three-dimensional polygons representing the bars + (rectangular prisms). + """ + + bars = art3d.Bar3DCollection(x, y, z, dxy, z0, **kwargs) + self.add_collection(bars) + + # compute axes limits + viewlim = np.array([(np.min(x), np.max(x) + bars.dx), + (np.min(y), np.max(y) + bars.dy), + (min(bars.z0, np.min(z)), np.max(z))]) + + self.auto_scale_xyz(*viewlim, False) + + return bars + + @_preprocess_data() + def hexbar3d(self, x, y, z, dxy='0.8', z0=0, **kwargs): + """ + This method creates three-dimensional barplot with hexagonal bars for a + regular xy-grid on the same level z-plane. Color of the bars can be set + uniquely, or cmap can be provided to map the bar heights *z* to colors. + + Parameters + ---------- + x, y: array-like + The coordinates of the anchor point of the bars. + + z: array-like + The height of the bars. + + dxy : str, optional + _description_, by default '0.8' + + z0 : float + z-position of the base of the bars. All bars share the same base + value. + + data : indexable object, optional + DATA_PARAMETER_PLACEHOLDER + + **kwargs + Any additional keyword arguments are forwarded to + `~.art3d.Poly3DCollection`. + + See Also + -------- + mpl_toolkits.mplot3d.axes3d.Axes3D.bar3d + + Returns + ------- + bars : `~.art3d.HexBar3DCollection` + A collection of three-dimensional polygons representing the bars + (hexagonal prisms). + """ + + bars = art3d.HexBar3DCollection(x, y, z, dxy, z0, **kwargs) + self.add_collection(bars) + + # compute axes limits + dx = bars.dx / 2 + dy = bars.dy / 2 #/ np.sqrt(3) + viewlim = np.array([(np.min(x) - dx, np.max(x) + dx), + (np.min(y) - dy, np.max(y) + dy), + (min(bars.z0, np.min(z)), np.max(z))]) + + self.auto_scale_xyz(*viewlim, False) + + return bars + def set_title(self, label, fontdict=None, loc='center', **kwargs): # docstring inherited ret = super().set_title(label, fontdict=fontdict, loc=loc, **kwargs) From e348c39a4edcb045de6e7f613a010726f06e75c9 Mon Sep 17 00:00:00 2001 From: astromancer Date: Fri, 16 Jun 2023 22:23:07 +0200 Subject: [PATCH 04/12] TST: add image tests FIX: remove scipy dependency FIX: y scaling correction FIX: whitespace --- .../test_axes3d/bar3d_cmap.png | Bin 0 -> 78475 bytes .../test_axes3d/bar3d_facecolors.png | Bin 0 -> 77836 bytes .../test_axes3d/bar3d_with_1d_data.png | Bin 0 -> 37052 bytes .../test_axes3d/bar3d_with_2d_data.png | Bin 0 -> 60687 bytes .../test_axes3d/bar3d_zsort.png | Bin 0 -> 68066 bytes .../test_axes3d/bar3d_zsort_hex.png | Bin 0 -> 67102 bytes lib/mpl_toolkits/mplot3d/tests/test_axes3d.py | 117 +++++++++++++++++- 7 files changed, 114 insertions(+), 3 deletions(-) create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_cmap.png create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_facecolors.png create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_with_1d_data.png create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_with_2d_data.png create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_zsort.png create mode 100644 lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_zsort_hex.png diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_cmap.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_cmap.png new file mode 100644 index 0000000000000000000000000000000000000000..6b430e4d2de324b56dbf92f338b791f9be5a7a28 GIT binary patch literal 78475 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�MXTtlF%EfV>IM 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%0Dr?a|xtTUKYVw;l8yIPBp7#h^@gO>_c3V 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 literal 0 HcmV?d00001 diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_facecolors.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_facecolors.png new file mode 100644 index 0000000000000000000000000000000000000000..1174e42275384193d505d6e8ac2e3dc013a4b4a2 GIT binary patch literal 77836 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

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

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 U+V3i<+YCV9>FVdQ&MBb@08PxeH~;_u literal 0 HcmV?d00001 diff --git a/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_with_1d_data.png b/lib/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/bar3d_with_1d_data.png new file mode 100644 index 0000000000000000000000000000000000000000..cab1dc3639661c4375bf476c23aa2038005877f5 GIT binary patch literal 37052 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�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 ge^$;#f@*?X@j$;!%JAzMgR_jSJC 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 ZcWK_zlzASD<;zL Date: Fri, 14 Jun 2024 13:17:02 +0200 Subject: [PATCH 05/12] DOC: add what's new entry MNT: lint DOC: update whats new --- doc/users/next_whats_new/bar3d_plots.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 doc/users/next_whats_new/bar3d_plots.rst diff --git a/doc/users/next_whats_new/bar3d_plots.rst b/doc/users/next_whats_new/bar3d_plots.rst new file mode 100644 index 000000000000..f21314b23c94 --- /dev/null +++ b/doc/users/next_whats_new/bar3d_plots.rst @@ -0,0 +1,23 @@ +New and improved 3D bar plots +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +We fixed a long standing issue with incorrect z-sorting in 3d bar graphs. +It is now possible to produce 3D bar charts that render correctly for all +viewing angles by using `.Axes3D.bar3d_grid`. In addition, bar charts with +hexagonal cross section can now be created with `.Axes3Dx.hexbar3d`. This +supports visualisation of density maps on hexagonal tessellations of the data +space. Two new artist collections are introduced to support this functionality: +`.Bar3DCollection` and `.HexBar3DCollection`. + + +.. plot:: + :include-source: true + :alt: Example of creating hexagonal 3D bars + + import matplotlib.pyplot as plt + import numpy as np + + fig, (ax1, ax2) = plt.subplots(1, 2, subplot_kw={'projection': '3d'}) + bars3d = ax1.bar3d_grid([0, 1], [0, 1], [1, 2], '0.8', facecolors=('m', 'y')) + hexbars3d = ax2.hexbar3d([0, 1], [0, 1], [1, 2], '0.8', facecolors=('m', 'y')) + plt.show() From b867634e0e51d7a25ec809074f6020c0a8ae6db4 Mon Sep 17 00:00:00 2001 From: astromancer Date: Mon, 17 Jun 2024 13:47:45 +0200 Subject: [PATCH 06/12] DOC: add gallery example --- galleries/examples/mplot3d/hexbin3d.py | 37 ++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 galleries/examples/mplot3d/hexbin3d.py diff --git a/galleries/examples/mplot3d/hexbin3d.py b/galleries/examples/mplot3d/hexbin3d.py new file mode 100644 index 000000000000..ff14b0f72536 --- /dev/null +++ b/galleries/examples/mplot3d/hexbin3d.py @@ -0,0 +1,37 @@ +""" +======================================== +3D Histogram with hexagonal bins +======================================== + +Demonstrates visualising a 3D density map of data using hexagonal tessellation. +""" + +import matplotlib.pyplot as plt +import numpy as np + +from matplotlib.cbook import hexbin + +# Fixing random state for reproducibility +np.random.seed(42) + +# Generate samples from mltivariate Gaussian +# Parameters +mu = (0, 0) +sigma = ([0.8, 0.3], + [0.3, 0.5]) +n = 10_000 +gridsize = 15 +# draw samples +xy = np.random.multivariate_normal(mu, sigma, n) +# histogram samples with hexbin +xyz, (xmin, xmax), (ymin, ymax), (nx, ny) = hexbin(*xy.T, gridsize=gridsize, + mincnt=3) +# compute bar cross section size +dxy = np.array([(xmax - xmin) / nx, (ymax - ymin) / ny / np.sqrt(3)]) * 0.95 + +# plot +fig, ax = plt.subplots(subplot_kw={'projection': '3d'}) +ax.hexbar3d(*xyz, dxy, cmap='plasma') +ax.set(xlabel='x', ylabel='y', zlabel='z') + +plt.show() From f186a95571f3e27743f58175cfe2290ca0815046 Mon Sep 17 00:00:00 2001 From: astromancer Date: Mon, 17 Jun 2024 14:53:22 +0200 Subject: [PATCH 07/12] MNT: cleanup --- lib/mpl_toolkits/mplot3d/art3d.py | 1 + lib/mpl_toolkits/mplot3d/axes3d.py | 2 +- lib/mpl_toolkits/mplot3d/tests/test_axes3d.py | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 7d6b844adcb1..48ee5ca431e6 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -91,6 +91,7 @@ # ---------------------------------------------------------------------------- # + def is_none(*args): for a in args: yield a is None diff --git a/lib/mpl_toolkits/mplot3d/axes3d.py b/lib/mpl_toolkits/mplot3d/axes3d.py index f4f2258b4200..2684926edbe2 100644 --- a/lib/mpl_toolkits/mplot3d/axes3d.py +++ b/lib/mpl_toolkits/mplot3d/axes3d.py @@ -3341,7 +3341,7 @@ def hexbar3d(self, x, y, z, dxy='0.8', z0=0, **kwargs): # compute axes limits dx = bars.dx / 2 - dy = bars.dy / 2 #/ np.sqrt(3) + dy = bars.dy / 2 viewlim = np.array([(np.min(x) - dx, np.max(x) + dx), (np.min(y) - dy, np.max(y) + dy), (min(bars.z0, np.min(z)), np.max(z))]) diff --git a/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py b/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py index ab00e4f108e6..5a744a73e75d 100644 --- a/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py +++ b/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py @@ -22,7 +22,6 @@ from matplotlib.text import Text import matplotlib.pyplot as plt -import numpy as np mpl3d_image_comparison = functools.partial( From bfa84cde0178ec4b5db5de4b76db57e3feca97cb Mon Sep 17 00:00:00 2001 From: astromancer Date: Sat, 5 Jul 2025 19:38:14 +0200 Subject: [PATCH 08/12] Refactor `do_3d_projection` --- lib/mpl_toolkits/mplot3d/art3d.py | 125 +++++++++++++++++------------- 1 file changed, 73 insertions(+), 52 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 48ee5ca431e6..1df6faca3792 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -1417,15 +1417,65 @@ def do_3d_projection(self): if self._edge_is_mapped: self._edgecolor3d = self._edgecolors - needs_masking = np.any(self._invalid_vertices) - num_faces = len(self._faces) - mask = self._invalid_vertices + # Broadcast the input colors to the number of faces + cface, cedge = self._compute_colors() + + # Apply mask to projected z coordinates of the polygon faces + mask, needs_masking = self._compute_mask() # Some faces might contain masked vertices, so we want to ignore any # errors that those might cause with np.errstate(invalid='ignore', divide='ignore'): pfaces = proj3d._proj_transform_vectors(self._faces, self.axes.M) + # get the projected z-coordinate array for computing the drawing order + # of the faces + pzs = pfaces[..., 2] + if needs_masking: + pzs = np.ma.MaskedArray(pzs, mask=mask) + + # Compute drawing order + face_order = self._compute_faces_order(pzs, needs_masking) + + # Compute 2d coordinates of the faces (and order) + faces_2d, *codes = self._compute_faces_2d(pfaces, face_order, mask, needs_masking) + + if codes: + PolyCollection.set_verts_and_codes(self, faces_2d, codes) + else: + PolyCollection.set_verts(self, faces_2d, self._closed) + + # Set the 2d facecolors and edgecolors + self._facecolors2d = cface[face_order] if len(cface) > 0 else cface + if len(self._edgecolor3d) == len(cface) and len(cedge) > 0: + self._edgecolors2d = cedge[face_order] + else: + self._edgecolors2d = self._edgecolor3d + + # Return zorder value + if self._sort_zpos is None: + # FIXME: Some results still don't look quite right. + # In particular, examine contourf3d_demo2.py + # with az = -54 and elev = -45. + return np.min(pzs) if pzs.size > 0 else np.nan + + # use _sort_zpos + zvec = np.array([[0], [0], [self._sort_zpos], [1]]) + ztrans = proj3d._proj_transform_vec(zvec, self.axes.M) + return ztrans[2][0] + + def _compute_faces_order(self, pzs, needs_masking): + face_z = self._zsortfunc(pzs, axis=-1) if len(pzs) > 0 else pzs + + if needs_masking: + face_z = face_z.data + + return np.argsort(face_z, axis=-1)[::-1] + + def _compute_mask(self): + needs_masking = np.any(self._invalid_vertices) + mask = self._invalid_vertices + if self._axlim_clip: viewlim_mask = _viewlim_mask(self._faces[..., 0], self._faces[..., 1], self._faces[..., 2], self.axes) @@ -1433,70 +1483,41 @@ def do_3d_projection(self): needs_masking = True mask = mask | viewlim_mask - pzs = pfaces[..., 2] - if needs_masking: - pzs = np.ma.MaskedArray(pzs, mask=mask) + return mask, needs_masking - # This extra fuss is to re-order face / edge colors + def _compute_colors(self): + # Broadcast the input colors to the number of faces cface = self._facecolor3d cedge = self._edgecolor3d + num_faces = len(self._faces) + if len(cface) != num_faces: cface = cface.repeat(num_faces, axis=0) + if len(cedge) != num_faces: - if len(cedge) == 0: - cedge = cface - else: - cedge = cedge.repeat(num_faces, axis=0) + cedge = cface if len(cedge) == 0 else cedge.repeat(num_faces, axis=0) - if len(pzs) > 0: - face_z = self._zsortfunc(pzs, axis=-1) - else: - face_z = pzs - if needs_masking: - face_z = face_z.data - face_order = np.argsort(face_z, axis=-1)[::-1] + return cface, cedge + + def _compute_faces_2d(self, pfaces, face_order, mask, needs_masking): + + faces_2d = pfaces[face_order, :, :2] if len(pfaces) > 0 else pfaces - if len(pfaces) > 0: - faces_2d = pfaces[face_order, :, :2] - else: - faces_2d = pfaces if self._codes3d is not None and len(self._codes3d) > 0: if needs_masking: segment_mask = ~mask[face_order, :] faces_2d = [face[mask, :] for face, mask - in zip(faces_2d, segment_mask)] + in zip(faces_2d, segment_mask)] codes = [self._codes3d[idx] for idx in face_order] - PolyCollection.set_verts_and_codes(self, faces_2d, codes) - else: - if needs_masking and len(faces_2d) > 0: - invalid_vertices_2d = np.broadcast_to( - mask[face_order, :, None], - faces_2d.shape) - faces_2d = np.ma.MaskedArray( - faces_2d, mask=invalid_vertices_2d) - PolyCollection.set_verts(self, faces_2d, self._closed) + return faces_2d, codes - if len(cface) > 0: - self._facecolors2d = cface[face_order] - else: - self._facecolors2d = cface - if len(self._edgecolor3d) == len(cface) and len(cedge) > 0: - self._edgecolors2d = cedge[face_order] - else: - self._edgecolors2d = self._edgecolor3d + if needs_masking and len(faces_2d) > 0: + invalid_vertices_2d = np.broadcast_to( + mask[face_order, :, None], + faces_2d.shape) + faces_2d = np.ma.MaskedArray(faces_2d, mask=invalid_vertices_2d) - # Return zorder value - if self._sort_zpos is not None: - zvec = np.array([[0], [0], [self._sort_zpos], [1]]) - ztrans = proj3d._proj_transform_vec(zvec, self.axes.M) - return ztrans[2][0] - elif pzs.size > 0: - # FIXME: Some results still don't look quite right. - # In particular, examine contourf3d_demo2.py - # with az = -54 and elev = -45. - return np.min(pzs) - else: - return np.nan + return faces_2d, def set_facecolor(self, colors): # docstring inherited From f92506e6f3737026b3e5529e83acb362841b26c0 Mon Sep 17 00:00:00 2001 From: astromancer Date: Tue, 22 Jul 2025 22:30:50 +0200 Subject: [PATCH 09/12] Use `contextlib.supress` instead of try-catch --- lib/mpl_toolkits/mplot3d/art3d.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 1df6faca3792..6b1650da212d 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -13,6 +13,7 @@ import numpy as np +import contextlib from matplotlib import ( _api, artist, cbook, colors as mcolors, lines, text as mtext, path as mpath, rcParams) @@ -1532,16 +1533,15 @@ def set_edgecolor(self, colors): def set_alpha(self, alpha): # docstring inherited artist.Artist.set_alpha(self, alpha) - try: + safety_net = contextlib.suppress(AttributeError, TypeError, IndexError) + with safety_net: self._facecolor3d = mcolors.to_rgba_array( self._facecolor3d, self._alpha) - except (AttributeError, TypeError, IndexError): - pass - try: + + with safety_net: self._edgecolors = mcolors.to_rgba_array( self._edgecolor3d, self._alpha) - except (AttributeError, TypeError, IndexError): - pass + self.stale = True def get_facecolor(self): From 9c489d0a40d88ad439373fa49854e206200f0d26 Mon Sep 17 00:00:00 2001 From: astromancer Date: Tue, 22 Jul 2025 22:32:30 +0200 Subject: [PATCH 10/12] Use `itertools.pairwise` --- lib/mpl_toolkits/mplot3d/art3d.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 6b1650da212d..ba78eda809c9 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -10,6 +10,7 @@ import math import warnings from contextlib import contextmanager +import itertools import numpy as np @@ -2089,7 +2090,7 @@ def _get_grid_step(x, axis=0): # deal with singular dimension (this ignores axis param) if x.ndim == 1: - if d := next(filter(None, map(np.diff, cbook.pairwise(x))), None): + if d := next(filter(None, map(np.diff, itertools.pairwise(x))), None): return d.item() if x.shape[axis % x.ndim] == 1: From 208ec60fdace723c552edf024ab181b72b790481 Mon Sep 17 00:00:00 2001 From: astromancer Date: Tue, 22 Jul 2025 22:50:36 +0200 Subject: [PATCH 11/12] Update `Bar3DCollection` after base refactor --- lib/mpl_toolkits/mplot3d/art3d.py | 193 +++++++++++++++--------------- 1 file changed, 96 insertions(+), 97 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index ba78eda809c9..7fa6941dce24 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -8,6 +8,7 @@ """ import math +import numbers import warnings from contextlib import contextmanager import itertools @@ -1569,7 +1570,7 @@ class Bar3DCollection(Poly3DCollection): with height *z - z0*. """ - _n_faces = 6 + _n_faces_base = 6 def __init__(self, x, y, z, dxy='0.8', z0=0, shade=True, lightsource=None, cmap=None, **kws): @@ -1618,22 +1619,31 @@ def __init__(self, x, y, z, dxy='0.8', z0=0, shade=True, lightsource=None, def _resolve_dx_dy(self, dxy): - d = list(cbook.duplicate_if_scalar(dxy)) + def _resolve_dx_dy(self, dxy): + # if dxy a number -> use it directly else if str, + # scale dxy to data step. + # get x/y step along axis -1/-2 (x/y considered constant along axis + # -2/-1) + dxy = list(cbook.duplicate_if_scalar(dxy)) for i, xy in enumerate(self.xy): - # if dxy a number -> use it directly else if str, - # scale dxy to data step. - # get x/y step along axis -1/-2 (x/y considered constant along axis - # -2/-1) - data_step = _get_grid_step(xy, -i - 1) if isinstance(d[i], str) else 1 - d[i] = float(d[i]) * data_step + delta = resolve_dxy(dxy[i], xy, -i - 1) + if delta == 0: + raise ValueError( + f'Data step cannot be 0 in the {"xy"[i]} direction.' + ) + dxy[i] = delta - dx, dy = d - assert (dx != 0) - assert (dy != 0) + return tuple(dxy) - return dx, dy + @property + def xyz(self): + return self._xyz + @xyz.setter + def xyz(self, xyz): + self.set_data(*xyz) + @property def x(self): return self._xyz[0] @@ -1665,6 +1675,10 @@ def set_z0(self, z0): self.z0 = float(z0) super().set_verts(self._compute_verts()) + @property + def n_bars(self): + return self.x.size + def set_data(self, x=None, y=None, z=None, z0=None, clim=None): # self._xyz = np.atleast_3d(xyz) assert not all(map(is_none, (x, y, z, z0))) @@ -1672,26 +1686,30 @@ def set_data(self, x=None, y=None, z=None, z0=None, clim=None): if (x is not None) or (y is not None): self.dx, self.dy = self._resolve_dx_dy(self.dxy) - for i, p in enumerate((x, y, z)): - if p is not None: - self._xyz[i] = p + for i, p in filter((lambda _, w: w), enumerate((x, y, z))): + self._xyz[i] = p if z0 is not None: self.z0 = float(z0) # compute points super().set_verts(self._compute_verts()) + + # set array for scalar mappable self.set_array(z := self.z.ravel()) + # compute color limits if clim is None or clim is True: clim = (z.min(), z.max()) if clim is not False: self.set_clim(*clim) + # Return if artist not added to axes yet if not self.axes: return + # Recompute 3d projection if self.axes.M is not None: self.do_3d_projection() @@ -1710,100 +1728,69 @@ def _compute_verts(self): # collapse the first two axes return polys.reshape((-1, 4, 3)) # *polys.shape[-2:] - def do_3d_projection(self): - """ - Perform the 3D projection for this object. - """ - if self._A is not None: - # force update of color mapping because we re-order them - # below. If we do not do this here, the 2D draw will call - # this, but we will never port the color mapped values back - # to the 3D versions. - # - # We hold the 3D versions in a fixed order (the order the user - # passed in) and sort the 2D version by view depth. - self.update_scalarmappable() - if self._face_is_mapped: - self._facecolor3d = self._facecolors - if self._edge_is_mapped: - self._edgecolor3d = self._edgecolors - - txs, tys, tzs = proj3d._proj_transform_vec(self._vec, self.axes.M) - xyzlist = [(txs[sl], tys[sl], tzs[sl]) for sl in self._segslices] - - # get panel facecolors - cface, cedge = self._compute_colors(xyzlist, self._lightsource) - - if xyzlist: - zorder = self._compute_zorder() - occluded = np.isnan(zorder) - - z_segments_2d = sorted( - ((zo, np.column_stack([xs, ys]), fc, ec, idx) - for idx, (ok, zo, (xs, ys, _), fc, ec) - in enumerate(zip(~occluded, zorder, xyzlist, cface, cedge)) - if ok), - key=lambda x: x[0], reverse=True) - - _, segments_2d, self._facecolors2d, self._edgecolors2d, idxs = \ - zip(*z_segments_2d) - else: - segments_2d = [] - self._facecolors2d = np.empty((0, 4)) - self._edgecolors2d = np.empty((0, 4)) - idxs = [] - - if self._codes3d is None: - PolyCollection.set_verts(self, segments_2d, self._closed) - else: - codes = [self._codes3d[idx] for idx in idxs] - PolyCollection.set_verts_and_codes(self, segments_2d, codes) - - if len(self._edgecolor3d) != len(cface): - self._edgecolors2d = self._edgecolor3d - - # Return zorder value - if self._sort_zpos is not None: - zvec = np.array([[0], [0], [self._sort_zpos], [1]]) - ztrans = proj3d._proj_transform_vec(zvec, self.axes.M) - return ztrans[2][0] - - return np.min(tzs) if tzs.size > 0 else np.nan - - def _compute_colors(self, xyzlist, lightsource): + def _compute_colors(self): # This extra fuss is to re-order face / edge colors cface = self._facecolor3d cedge = self._edgecolor3d - n, nc = len(xyzlist), len(cface) - - if (nc == 1) or (nc * self._n_faces == n): - cface = cface.repeat(n // nc, axis=0) - if self._shade: - verts = self._compute_verts() - normals = _generate_normals(verts) - cface = _shade_colors(cface, normals, lightsource) + num_faces = len(self._faces) + num_facecolors = len(cface) + + # Check that the number of facecolors make sense for the number of bars + # or faces + if num_facecolors not in {1, self.n_bars, num_faces}: + raise ValueError( + f"Invalid number of facecolors ({num_facecolors}) provided for" + f"{self.__class__.__name__} with {self.n_bars} bars ({num_faces} faces)" + ) + + # For single facecolor, or number matching number of bars we have to + # duplicate to the total number of faces + if (repeat := num_faces // num_facecolors) > 1: + cface = cface.repeat(repeat, axis=0) + + # apply shading if required + if self._shade: + verts = self._compute_verts() + normals = _generate_normals(verts) + cface = _shade_colors(cface, normals, self._lightsource) - if self._original_alpha is not None: - cface[:, -1] = self._original_alpha + # apply transparancy if required + if self._original_alpha is not None: + cface[:, -1] = self._original_alpha + + # Duplicate edgecolors if needed + if len(cedge) != num_faces: + cedge = cface if len(cedge) == 0 else cedge.repeat(num_faces, axis=0) - if len(cface) != n: - raise ValueError - # cface = cface.repeat(n, axis=0) + return cface, cedge - if len(cedge) != n: - cedge = cface if len(cedge) == 0 else cedge.repeat(n, axis=0) + def _compute_mask(self): + mask, needs_masking = super()._compute_mask() + # Get drawing order for the base shape at this orientation + prism_face_zorder = get_prism_face_zorder(self.axes, + False, + self._n_faces_base - 2) + # Mask faces that are behind others so we don't draw them + occluded = prism_face_zorder < 0.5 + if self._original_alpha == 1: + # only mask back panels if bars are fully opaque + if needs_masking: + mask[occluded] = True + else: + mask = occluded[None].repeat(self._faces.shape[1], 0).T + needs_masking = True - return cface, cedge + return mask, needs_masking - def _compute_zorder(self): + def _compute_faces_order(self, pzs, needs_masking): # sort by depth (furthest drawn first) zorder = camera_distance(self.axes, *self.xy) zorder = (zorder - zorder.min()) / (np.ptp(zorder) or 1) zorder = zorder.ravel() * len(zorder) face_zorder = get_prism_face_zorder(self.axes, - self._original_alpha == 1, - self._n_faces - 2) - return (zorder[..., None] + face_zorder).ravel() + False, + self._n_faces_base - 2) + return np.argsort((zorder[..., None] + face_zorder).ravel())[::-1] class HexBar3DCollection(Bar3DCollection): @@ -2083,7 +2070,19 @@ def _camera_position(ax): return r, theta, phi -def _get_grid_step(x, axis=0): +def resolve_dxy(step, xy, axis): + if isinstance(step, str): + return float(step) * _resolve_grid_step(xy, axis) + + if not isinstance(step, numbers.Real): + raise TypeError( + f"Invalid type ({type(step)}) for specifying bar size `dxy`" + ) + + return float(step) + + +def _resolve_grid_step(x, axis=0): # for data arrange in a regular grid, get the size of the data step by # looking for the first non-zero step along an axis. # If axis is singular, return 1 From 3138fc068c505b1e1038a8f152cebc9a0674c161 Mon Sep 17 00:00:00 2001 From: astromancer Date: Tue, 22 Jul 2025 23:22:07 +0200 Subject: [PATCH 12/12] Update docstrings --- lib/mpl_toolkits/mplot3d/art3d.py | 133 +++++++++++++++++++++++++++--- 1 file changed, 122 insertions(+), 11 deletions(-) diff --git a/lib/mpl_toolkits/mplot3d/art3d.py b/lib/mpl_toolkits/mplot3d/art3d.py index 7fa6941dce24..f21efd765ad1 100644 --- a/lib/mpl_toolkits/mplot3d/art3d.py +++ b/lib/mpl_toolkits/mplot3d/art3d.py @@ -1565,16 +1565,81 @@ def get_edgecolor(self): class Bar3DCollection(Poly3DCollection): """ - Bars (rectangular prisms) with constant square cross section, bases located - on z-plane at *z0*, arranged in a regular grid at *x*, *y* locations and - with height *z - z0*. - """ + A collection of 3D bars. + + The bars are rectangular prisms with constant square cross-section. + Attributes + ---------- + xyz : numpy.ndarray + Array of bar positions and heights. + x: numpy.ndarray + The x-coordinates of the bar bases. + y: numpy.ndarray + The y-coordinates of the bar bases. + xy: numpy.ndarray + The x and y coordinates of the bar bases. + dxy : tuple[float, float] + The width (dx) and depth (dy) of the bars in data units. + dx : float + The width of the bars in data units. + dy : float + The depth of the bars in data units. + z : numpy.ndarray + The height of the bars. + z0 : float + The z-coordinate of the bar bases. + n_bars + The number of bars. + + Methods + ------- + set_data: + Set the data for the bars. Can also be used to set the color limits + for color mapped data. + """ _n_faces_base = 6 def __init__(self, x, y, z, dxy='0.8', z0=0, shade=True, lightsource=None, cmap=None, **kws): - # + """ + Create a collection of 3D bars. + + Bars (rectangular prisms) with constant square cross section, bases + located on z-plane at *z0*, arranged in a regular grid at *x*, *y* + locations and with height *z - z0*. + + Parameters + ---------- + x, y, z : array-like + The coordinates of the bar bases. + dxy : float or str or tuple[float|str, float|str], default: '0.8' + The width and depth of the bars: + - float: *dxy* is the width and depth of the bars. The bars are + scaled to the data with this value. If *dxy* is a string, it must + be parsable as a float. + - (float, float): *dxy* is the width and depth of the bars in + data units. + z0 : float, default: 0 + Z-coordinate of the bases. + shade : bool, default: True + When *True*, the faces of the bars are shaded. + lightsource : `~matplotlib.colors.LightSource`, optional + The lightsource to use when *shade* is True. + cmap : `~matplotlib.colors.Colormap`, optional + Colormap for the bars. + **kws + Additional keyword arguments are passed to `.Poly3DCollection`. + + Raises + ------ + ValueError: + When arrays have inconsistent shapes. + TypeError: + If the provided lightsource is not a `matplotlib.colors.LightSource` + object. + """ + x, y, z, z0 = np.ma.atleast_1d(x, y, z, z0) assert x.shape == y.shape == z.shape @@ -1677,6 +1742,7 @@ def set_z0(self, z0): @property def n_bars(self): + """The number of bars in the collection.""" return self.x.size def set_data(self, x=None, y=None, z=None, z0=None, clim=None): @@ -2071,6 +2137,31 @@ def _camera_position(ax): def resolve_dxy(step, xy, axis): + """ + Resolve the bar size from input step size and xy-positions along an axis of + the array. + + Parameters + ---------- + step : float or str + The bar size. If the step input is float, it is returned unchanged. If + it is a string, it is converted to a float and multiplied + by the grid step size along the specified *axis*. + xy : array-like + The coordinates of the bar centers. + axis : int + The axis along which to calculate the grid step size. + + Returns + ------- + float + The resolved bar size. + + Raises + ------ + TypeError + If *step* is not a float or a string. + """ if isinstance(step, str): return float(step) * _resolve_grid_step(xy, axis) @@ -2101,15 +2192,35 @@ def _resolve_grid_step(x, axis=0): def get_prism_face_zorder(ax, mask_occluded=True, nfaces=4): - # compute panel sequence based on camera position + """ + Compute the zorder of prism faces based on camera position. + + The zorder determines the order in which the faces are drawn. Faces further + from the camera are drawn first. + + Parameters + ---------- + ax : Axes3D + The 3D axes. + mask_occluded : bool, default: True + Whether to mask occluded faces. + nfaces : int, default: 4 + The number of faces of the prism's base shape. Eg: 4 for square bars, 6 + for hexagonal bars. + + Returns + ------- + zorder : ndarray + The zorder of the prism faces. + """ - # these index positions are determined by the order of the faces returned - # by `_compute_verts` + # NOTE: these index positions are determined by the order of the faces + # returned by `_compute_verts` base, top = nfaces, nfaces + 1 if ax.elev < 0: base, top = top, base - # this is to figure out which of the vertical faces to draw first + # This is to figure out which of the vertical faces to draw first angle_step = 360 / nfaces zero = -angle_step / 2 flip = (np.abs(ax.elev) % 180 > 90) @@ -2125,7 +2236,7 @@ def get_prism_face_zorder(ax, mask_occluded=True, nfaces=4): sequence = [base, first, second, third] sequence = [*sequence, *np.setdiff1d(np.arange(nfaces), sequence), top] - # reverse the panel sequence if elevation has flipped the axes by 180 multiple + # reverse panel sequence if elevation has flipped the axes by 180 multiple if np.abs(ax.elev) % 360 > 180: sequence = sequence[::-1] @@ -2145,7 +2256,7 @@ def get_prism_face_zorder(ax, mask_occluded=True, nfaces=4): # f'{sequence = :}', # f'names = {list(np.take(names, sequence))}', # f'{zorder = :}', - # f'zorder = {pformat(dict(zip(*cosort(zorder, names)[::-1])))}', + # f'zorder = {dict(sorted(zip(zorder, names))[::-1])}', # sep='\n') return zorder pFad - Phonifier reborn