From 9b02b9bf92fae109056375d5ed831671a8b14e47 Mon Sep 17 00:00:00 2001 From: Flynn Date: Thu, 6 Feb 2025 17:30:10 -0500 Subject: [PATCH 01/22] add 4D case with a single z-plane --- fastplotlib/tools/_histogram_lut.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/fastplotlib/tools/_histogram_lut.py b/fastplotlib/tools/_histogram_lut.py index b8c6633a8..9cda73ed7 100644 --- a/fastplotlib/tools/_histogram_lut.py +++ b/fastplotlib/tools/_histogram_lut.py @@ -193,7 +193,17 @@ def _fpl_add_plot_area_hook(self, plot_area): self._plot_area.controller.enabled = True def _calculate_histogram(self, data): - if data.ndim > 2: + if data.ndim > 3: + # subsample to a single z-slice, max of 500 x 100 x 100 + # dim0 is usually time, allow max of 500 timepoints + # dim1 in a 4D dataset is usually z, take a single z + ss0 = max(1, int(data.shape[0] / 500)) + ss2 = max(1, int(data.shape[2] / 100)) + ss3 = max(1, int(data.shape[3] / 100)) + data_ss = data[::ss0, 0, ::ss2, ::ss3] + hist, edges = np.histogram(data_ss, bins=self._nbins) + + elif data.ndim > 2: # subsample to max of 500 x 100 x 100, # np.histogram takes ~30ms with this size on a 8 core Ryzen laptop # dim0 is usually time, allow max of 500 timepoints From a52f9fa5f4af7cf082f50bcb60a233c07f656b5c Mon Sep 17 00:00:00 2001 From: Flynn Date: Fri, 21 Feb 2025 21:06:07 -0500 Subject: [PATCH 02/22] add subsample_array function --- fastplotlib/utils/functions.py | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 910eba8e8..b295a8ec7 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -405,3 +405,42 @@ def parse_cmap_values( colors = np.vstack([colormap[val] for val in norm_cmap_values]) return colors + + +def subsample_array(arr, max_items=1e6): + """ + Subsamples an input array while preserving its relative dimensional proportions. + + Parameters + ---------- + arr : np.ndarray + Input array of any dimensionality to be subsampled. + + max_items : int, optional + Largest bytesize allowed for the total size of the subsampled array. Default is 1e6. + + Returns + ------- + np.ndarray + subsampled version of the input array + """ + shape = np.array(arr.shape) + total_elements = np.prod(shape) + + if total_elements <= max_items: + return arr # no need to subsample if already below the threshold + + # relative proportions based on the shape + proportions = shape / shape.sum() + + target_elements = min(total_elements, max_items) + target_shape = np.maximum((proportions * target_elements).astype(int), 1) + + # keep total elements within limit + scale_factor = (target_elements / np.prod(target_shape)) ** (1 / len(shape)) + target_shape = np.maximum((target_shape * scale_factor).astype(int), 1) + + steps = np.ceil(shape / target_shape).astype(int) + slices = tuple(slice(None, None, step) for step in steps) + + return arr[slices] From a34d4fe7372ad652520b7c5da4059f0d73f4a32f Mon Sep 17 00:00:00 2001 From: Flynn Date: Fri, 21 Feb 2025 21:06:29 -0500 Subject: [PATCH 03/22] use new subsample_array function --- fastplotlib/tools/_histogram_lut.py | 35 ++++------------------------- 1 file changed, 4 insertions(+), 31 deletions(-) diff --git a/fastplotlib/tools/_histogram_lut.py b/fastplotlib/tools/_histogram_lut.py index 9cda73ed7..bb77ce1cf 100644 --- a/fastplotlib/tools/_histogram_lut.py +++ b/fastplotlib/tools/_histogram_lut.py @@ -5,6 +5,7 @@ import pygfx +from ..utils.functions import subsample_array from ..graphics import LineGraphic, ImageGraphic, TextGraphic from ..graphics.utils import pause_events from ..graphics._base import Graphic @@ -193,38 +194,10 @@ def _fpl_add_plot_area_hook(self, plot_area): self._plot_area.controller.enabled = True def _calculate_histogram(self, data): - if data.ndim > 3: - # subsample to a single z-slice, max of 500 x 100 x 100 - # dim0 is usually time, allow max of 500 timepoints - # dim1 in a 4D dataset is usually z, take a single z - ss0 = max(1, int(data.shape[0] / 500)) - ss2 = max(1, int(data.shape[2] / 100)) - ss3 = max(1, int(data.shape[3] / 100)) - data_ss = data[::ss0, 0, ::ss2, ::ss3] - hist, edges = np.histogram(data_ss, bins=self._nbins) - - elif data.ndim > 2: - # subsample to max of 500 x 100 x 100, - # np.histogram takes ~30ms with this size on a 8 core Ryzen laptop - # dim0 is usually time, allow max of 500 timepoints - ss0 = max(1, int(data.shape[0] / 500)) # max to prevent step = 0 - # allow max of 100 for x and y if ndim > 2 - ss1 = max(1, int(data.shape[1] / 100)) - ss2 = max(1, int(data.shape[2] / 100)) - - data_ss = data[::ss0, ::ss1, ::ss2] - - hist, edges = np.histogram(data_ss, bins=self._nbins) - else: - # allow max of 1000 x 1000 - # this takes ~4ms on a 8 core Ryzen laptop - ss0 = max(1, int(data.shape[0] / 1_000)) - ss1 = max(1, int(data.shape[1] / 1_000)) - - data_ss = data[::ss0, ::ss1] - - hist, edges = np.histogram(data_ss, bins=self._nbins) + # get a subsampled view of this array + data_ss = subsample_array(data, max_items=1e6) # 1e6 is default + hist, edges = np.histogram(data_ss, bins=self._nbins) # used if data ptp <= 10 because event things get weird # with tiny world objects due to floating point error From d98c14f4dc63f864e272067cbb7eb9c6aa3522cf Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 12:38:19 -0500 Subject: [PATCH 04/22] remove redundant target_elements from subsample --- fastplotlib/utils/functions.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index b295a8ec7..d65ace621 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -432,12 +432,10 @@ def subsample_array(arr, max_items=1e6): # relative proportions based on the shape proportions = shape / shape.sum() - - target_elements = min(total_elements, max_items) - target_shape = np.maximum((proportions * target_elements).astype(int), 1) + target_shape = np.maximum((proportions * total_elements).astype(int), 1) # keep total elements within limit - scale_factor = (target_elements / np.prod(target_shape)) ** (1 / len(shape)) + scale_factor = (total_elements / np.prod(target_shape)) ** (1 / len(shape)) target_shape = np.maximum((target_shape * scale_factor).astype(int), 1) steps = np.ceil(shape / target_shape).astype(int) From a67326fa8b077bb4aa4a25533d61359265462251 Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 12:39:15 -0500 Subject: [PATCH 05/22] import utils from __all__ --- fastplotlib/tools/_histogram_lut.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fastplotlib/tools/_histogram_lut.py b/fastplotlib/tools/_histogram_lut.py index bb77ce1cf..dd9c96ca7 100644 --- a/fastplotlib/tools/_histogram_lut.py +++ b/fastplotlib/tools/_histogram_lut.py @@ -5,7 +5,7 @@ import pygfx -from ..utils.functions import subsample_array +from ..utils import subsample_array from ..graphics import LineGraphic, ImageGraphic, TextGraphic from ..graphics.utils import pause_events from ..graphics._base import Graphic From c7e0102879fb8e9396746772d024b86c0c87234e Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 12:40:33 -0500 Subject: [PATCH 06/22] rename subsample vars using standard numpy names --- fastplotlib/utils/functions.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index d65ace621..dbbc24460 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -424,21 +424,21 @@ def subsample_array(arr, max_items=1e6): np.ndarray subsampled version of the input array """ - shape = np.array(arr.shape) - total_elements = np.prod(shape) + array_shape = np.array(arr.shape) + array_size = np.prod(array_shape) - if total_elements <= max_items: + if array_size <= max_items: return arr # no need to subsample if already below the threshold # relative proportions based on the shape - proportions = shape / shape.sum() - target_shape = np.maximum((proportions * total_elements).astype(int), 1) + proportions = array_shape / array_shape.sum() + target_shape = np.maximum((proportions * array_size).astype(int), 1) # keep total elements within limit - scale_factor = (total_elements / np.prod(target_shape)) ** (1 / len(shape)) + scale_factor = (array_size / np.prod(target_shape)) ** (1 / len(array_shape)) target_shape = np.maximum((target_shape * scale_factor).astype(int), 1) - steps = np.ceil(shape / target_shape).astype(int) + steps = np.ceil(array_shape / target_shape).astype(int) slices = tuple(slice(None, None, step) for step in steps) return arr[slices] From 991b544fd4672a3fd26b5c1d9b8a84a7e6ec52ab Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 12:41:05 -0500 Subject: [PATCH 07/22] subsample max_items -> max_size --- fastplotlib/tools/_histogram_lut.py | 2 +- fastplotlib/utils/functions.py | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/fastplotlib/tools/_histogram_lut.py b/fastplotlib/tools/_histogram_lut.py index dd9c96ca7..cb4dc5c8c 100644 --- a/fastplotlib/tools/_histogram_lut.py +++ b/fastplotlib/tools/_histogram_lut.py @@ -196,7 +196,7 @@ def _fpl_add_plot_area_hook(self, plot_area): def _calculate_histogram(self, data): # get a subsampled view of this array - data_ss = subsample_array(data, max_items=1e6) # 1e6 is default + data_ss = subsample_array(data, max_size=1e6) # 1e6 is default hist, edges = np.histogram(data_ss, bins=self._nbins) # used if data ptp <= 10 because event things get weird diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index dbbc24460..8c4d592c9 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -407,7 +407,7 @@ def parse_cmap_values( return colors -def subsample_array(arr, max_items=1e6): +def subsample_array(arr, max_size=1e6): """ Subsamples an input array while preserving its relative dimensional proportions. @@ -416,7 +416,7 @@ def subsample_array(arr, max_items=1e6): arr : np.ndarray Input array of any dimensionality to be subsampled. - max_items : int, optional + max_size : int, optional Largest bytesize allowed for the total size of the subsampled array. Default is 1e6. Returns @@ -427,7 +427,7 @@ def subsample_array(arr, max_items=1e6): array_shape = np.array(arr.shape) array_size = np.prod(array_shape) - if array_size <= max_items: + if array_size <= max_size: return arr # no need to subsample if already below the threshold # relative proportions based on the shape From 6d212bcae648ab2585d35bb3f1ba83ddba11c061 Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 12:42:47 -0500 Subject: [PATCH 08/22] largest bytesize -> largest array size, lowercase errrrything --- fastplotlib/utils/functions.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 8c4d592c9..6d65471c3 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -409,15 +409,15 @@ def parse_cmap_values( def subsample_array(arr, max_size=1e6): """ - Subsamples an input array while preserving its relative dimensional proportions. + subsamples an input array while preserving its relative dimensional proportions. Parameters ---------- arr : np.ndarray - Input array of any dimensionality to be subsampled. + input array of any dimensionality to be subsampled. max_size : int, optional - Largest bytesize allowed for the total size of the subsampled array. Default is 1e6. + largest array size allowed in the subsampled array. Default is 1e6. Returns ------- From 20333ab88893388826297e6af206301e5ce1de58 Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 13:16:26 -0500 Subject: [PATCH 09/22] use subsample_array in quick_min_max --- fastplotlib/utils/functions.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 6d65471c3..37e5279ac 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -267,7 +267,7 @@ def make_colors_dict(labels: Sequence, cmap: str, **kwargs) -> OrderedDict: return OrderedDict(zip(labels, colors)) -def quick_min_max(data: np.ndarray) -> tuple[float, float]: +def quick_min_max(data: np.ndarray, max_size=1e6) -> tuple[float, float]: """ Adapted from pyqtgraph.ImageView. Estimate the min/max values of *data* by subsampling. @@ -276,6 +276,9 @@ def quick_min_max(data: np.ndarray) -> tuple[float, float]: ---------- data: np.ndarray or array-like with `min` and `max` attributes + max_size : int, optional + largest array size allowed in the subsampled array. Default is 1e6. + Returns ------- (float, float) @@ -289,11 +292,7 @@ def quick_min_max(data: np.ndarray) -> tuple[float, float]: ): return data.min, data.max - while np.prod(data.shape) > 1e6: - ax = np.argmax(data.shape) - sl = [slice(None)] * data.ndim - sl[ax] = slice(None, None, 2) - data = data[tuple(sl)] + data = subsample_array(data, max_size=max_size) return float(np.nanmin(data)), float(np.nanmax(data)) From 4450195ca0f130aa8ac88a87ffd02ab1a6704a37 Mon Sep 17 00:00:00 2001 From: Flynn Date: Sat, 22 Feb 2025 15:49:42 -0500 Subject: [PATCH 10/22] make 1e6 int --- fastplotlib/tools/_histogram_lut.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fastplotlib/tools/_histogram_lut.py b/fastplotlib/tools/_histogram_lut.py index cb4dc5c8c..aeb8dd996 100644 --- a/fastplotlib/tools/_histogram_lut.py +++ b/fastplotlib/tools/_histogram_lut.py @@ -196,7 +196,7 @@ def _fpl_add_plot_area_hook(self, plot_area): def _calculate_histogram(self, data): # get a subsampled view of this array - data_ss = subsample_array(data, max_size=1e6) # 1e6 is default + data_ss = subsample_array(data, max_size=int(1e6)) # 1e6 is default hist, edges = np.histogram(data_ss, bins=self._nbins) # used if data ptp <= 10 because event things get weird From f65d9eb1002e6026f5f0b1e00799477fbd3dadf6 Mon Sep 17 00:00:00 2001 From: Flynn Date: Fri, 28 Feb 2025 14:09:32 -0500 Subject: [PATCH 11/22] update png from artifact (imgui-screenshots) --- examples/screenshots/image_widget_grid.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/screenshots/image_widget_grid.png b/examples/screenshots/image_widget_grid.png index e0f0ff5c8..607f86dad 100644 --- a/examples/screenshots/image_widget_grid.png +++ b/examples/screenshots/image_widget_grid.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eeb5b86e7c15dfe2e71267453426930200223026f72156f34ff1ccc2f9389b6e -size 253769 +oid sha256:d878351c85b2186c864bcf1bb5f0d08318d21a0b4144c7fe549d702aa1b5ebda +size 252758 From fc996a14dbb7a0be09a7ae56b3e8ccfaee7279c8 Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Sun, 6 Apr 2025 19:35:35 -0400 Subject: [PATCH 12/22] fix subsample array --- fastplotlib/utils/functions.py | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 37e5279ac..464a69d5d 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -406,7 +406,7 @@ def parse_cmap_values( return colors -def subsample_array(arr, max_size=1e6): +def subsample_array(arr: np.ndarray, max_size: int=1e6): """ subsamples an input array while preserving its relative dimensional proportions. @@ -415,29 +415,15 @@ def subsample_array(arr, max_size=1e6): arr : np.ndarray input array of any dimensionality to be subsampled. - max_size : int, optional - largest array size allowed in the subsampled array. Default is 1e6. - Returns ------- np.ndarray subsampled version of the input array """ - array_shape = np.array(arr.shape) - array_size = np.prod(array_shape) - - if array_size <= max_size: + if np.prod(arr.shape) <= max_size: return arr # no need to subsample if already below the threshold - # relative proportions based on the shape - proportions = array_shape / array_shape.sum() - target_shape = np.maximum((proportions * array_size).astype(int), 1) - - # keep total elements within limit - scale_factor = (array_size / np.prod(target_shape)) ** (1 / len(array_shape)) - target_shape = np.maximum((target_shape * scale_factor).astype(int), 1) - - steps = np.ceil(array_shape / target_shape).astype(int) - slices = tuple(slice(None, None, step) for step in steps) - - return arr[slices] + f = np.power((np.prod(arr.shape) / 1e6), 1.0 / arr.ndim) + ns = np.floor(np.array(arr.shape) / f).clip(min=1) + slices = tuple(slice(None, None, int(s)) for s in np.floor(arr.shape / ns).astype(int)) + return np.asarray(arr[slices]) From 4be2eaaf5810e42f95c26f18f63774ce62eff41a Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Sun, 6 Apr 2025 20:35:20 -0400 Subject: [PATCH 13/22] bring back original image_widget_grid --- examples/screenshots/image_widget_grid.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/screenshots/image_widget_grid.png b/examples/screenshots/image_widget_grid.png index 607f86dad..e0f0ff5c8 100644 --- a/examples/screenshots/image_widget_grid.png +++ b/examples/screenshots/image_widget_grid.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d878351c85b2186c864bcf1bb5f0d08318d21a0b4144c7fe549d702aa1b5ebda -size 252758 +oid sha256:eeb5b86e7c15dfe2e71267453426930200223026f72156f34ff1ccc2f9389b6e +size 253769 From 6fb06ab0ce22860d22ffa3004dcb2774b598cbf5 Mon Sep 17 00:00:00 2001 From: Kushal Kolar Date: Sun, 6 Apr 2025 23:08:46 -0400 Subject: [PATCH 14/22] Update functions.py --- fastplotlib/utils/functions.py | 44 ++++++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 464a69d5d..6dc27c317 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -406,24 +406,58 @@ def parse_cmap_values( return colors -def subsample_array(arr: np.ndarray, max_size: int=1e6): +def subsample_array(arr: np.ndarray, max_size: int = 1e6): """ - subsamples an input array while preserving its relative dimensional proportions. + Subsamples an input array while preserving its relative dimensional proportions. + The dimensions (shape) of the array can be represented as: + + .. math:: + + [d_1, d_2, \\dots d_n] + + The product of the dimensions can be represented as: + + .. math:: + + \\prod_{i=1}^{n} d_i + + To find the factor ``f`` by which to divide the size of each dimension in order to + get max_size ``s`` we must solve for ``f`` in the following expression: + + .. math:: + + \\prod_{i=1}^{n} \\frac{d_i}{\\mathbf{f}} = \\mathbf{s} + + The solution for ``f`` is is simply the nth root of the product of the dims divided by the max_size + where n is the number of dimensions + + .. math:: + + \\mathbf{f} = \\sqrt[n]{\\frac{\\prod_{i=1}^{n} d_i}{\\mathbf{s}}} + Parameters ---------- - arr : np.ndarray + arr: np.ndarray input array of any dimensionality to be subsampled. + max_size: int, default 1e6 + maximum number of elements in subsampled array + Returns ------- np.ndarray - subsampled version of the input array + subsample of the input array """ if np.prod(arr.shape) <= max_size: return arr # no need to subsample if already below the threshold - f = np.power((np.prod(arr.shape) / 1e6), 1.0 / arr.ndim) + # get factor by which to divide all dims + f = np.power((np.prod(arr.shape) / max_size), 1.0 / arr.ndim) + + # new shape for subsampled array ns = np.floor(np.array(arr.shape) / f).clip(min=1) + + # get the step size for the slices slices = tuple(slice(None, None, int(s)) for s in np.floor(arr.shape / ns).astype(int)) return np.asarray(arr[slices]) From 1311e21c489bc66e20bc6ec61211d6440715927a Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 18:07:17 -0400 Subject: [PATCH 15/22] revert image_widget_grid from regenerate --- examples/screenshots/image_widget_grid.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/screenshots/image_widget_grid.png b/examples/screenshots/image_widget_grid.png index e0f0ff5c8..a00c4c46b 100644 --- a/examples/screenshots/image_widget_grid.png +++ b/examples/screenshots/image_widget_grid.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:eeb5b86e7c15dfe2e71267453426930200223026f72156f34ff1ccc2f9389b6e -size 253769 +oid sha256:4b5e3af8a96ae7c63ccd3022d65befc5a342dfda1faa200f9f583e3ce58eda5d +size 252826 From 608545d1ecc0c4fb15cd31d5c52f84908912ec93 Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 18:30:34 -0400 Subject: [PATCH 16/22] hopefully the correct screenshot --- examples/screenshots/image_widget_grid.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/screenshots/image_widget_grid.png b/examples/screenshots/image_widget_grid.png index a00c4c46b..16d8ead08 100644 --- a/examples/screenshots/image_widget_grid.png +++ b/examples/screenshots/image_widget_grid.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b5e3af8a96ae7c63ccd3022d65befc5a342dfda1faa200f9f583e3ce58eda5d -size 252826 +oid sha256:430cd0ee5c05221c42073345480acbeee672c299311f239dc0790a9495d0d758 +size 248046 From af9051e2d95b2223574508e46c0f1d813f4ab3be Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 18:32:33 -0400 Subject: [PATCH 17/22] black --- fastplotlib/utils/functions.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/fastplotlib/utils/functions.py b/fastplotlib/utils/functions.py index 31ce8a8f3..e775288d3 100644 --- a/fastplotlib/utils/functions.py +++ b/fastplotlib/utils/functions.py @@ -422,20 +422,20 @@ def subsample_array(arr: np.ndarray, max_size: int = 1e6): \\prod_{i=1}^{n} d_i - To find the factor ``f`` by which to divide the size of each dimension in order to + To find the factor ``f`` by which to divide the size of each dimension in order to get max_size ``s`` we must solve for ``f`` in the following expression: .. math:: \\prod_{i=1}^{n} \\frac{d_i}{\\mathbf{f}} = \\mathbf{s} - The solution for ``f`` is is simply the nth root of the product of the dims divided by the max_size + The solution for ``f`` is is simply the nth root of the product of the dims divided by the max_size where n is the number of dimensions .. math:: \\mathbf{f} = \\sqrt[n]{\\frac{\\prod_{i=1}^{n} d_i}{\\mathbf{s}}} - + Parameters ---------- arr: np.ndarray @@ -459,5 +459,7 @@ def subsample_array(arr: np.ndarray, max_size: int = 1e6): ns = np.floor(np.array(arr.shape) / f).clip(min=1) # get the step size for the slices - slices = tuple(slice(None, None, int(s)) for s in np.floor(arr.shape / ns).astype(int)) + slices = tuple( + slice(None, None, int(s)) for s in np.floor(arr.shape / ns).astype(int) + ) return np.asarray(arr[slices]) From b2b4a81ae6662002a18a91a233526e1f5713963b Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 18:57:43 -0400 Subject: [PATCH 18/22] replace iw-zfish-grid-qreplace nb-iw-zfish-grid-init-mw5 to see --- .../nb-image-widget-zfish-grid-init-mean-window-5.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-init-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-init-mean-window-5.png index 0745a4d4a..61702a6d9 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-init-mean-window-5.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-init-mean-window-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e431229806ee32a78fb9313a09af20829c27799798232193feab1723b66b1bca -size 112646 +oid sha256:272156c4261bba40eba92f953a0f5078ad8ff2aa80f06a53f73a3572eb537dd5 +size 111155 From 66371a9d74e4dbe1aef7ca0670db11a831c69337 Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 19:21:32 -0400 Subject: [PATCH 19/22] replace nb-image-widget screenshots --- .../screenshots/nb-image-widget-movie-single-0-reset.png | 4 ++-- .../notebooks/screenshots/nb-image-widget-movie-single-0.png | 4 ++-- .../screenshots/nb-image-widget-movie-single-279.png | 4 ++-- .../nb-image-widget-movie-single-50-window-max-33.png | 4 ++-- .../nb-image-widget-movie-single-50-window-mean-13.png | 4 ++-- .../nb-image-widget-movie-single-50-window-mean-33.png | 4 ++-- .../nb-image-widget-movie-single-50-window-reset.png | 4 ++-- .../notebooks/screenshots/nb-image-widget-movie-single-50.png | 4 ++-- .../nb-image-widget-zfish-frame-50-frame-apply-gaussian.png | 4 ++-- .../nb-image-widget-zfish-frame-50-frame-apply-reset.png | 4 ++-- .../nb-image-widget-zfish-frame-50-max-window-13.png | 4 ++-- .../nb-image-widget-zfish-frame-50-mean-window-13.png | 4 ++-- .../nb-image-widget-zfish-frame-50-mean-window-5.png | 4 ++-- .../notebooks/screenshots/nb-image-widget-zfish-frame-50.png | 4 ++-- .../notebooks/screenshots/nb-image-widget-zfish-frame-99.png | 4 ++-- ...-image-widget-zfish-grid-frame-50-frame-apply-gaussian.png | 4 ++-- .../nb-image-widget-zfish-grid-frame-50-frame-apply-reset.png | 4 ++-- .../nb-image-widget-zfish-grid-frame-50-max-window-13.png | 4 ++-- .../nb-image-widget-zfish-grid-frame-50-mean-window-13.png | 4 ++-- .../screenshots/nb-image-widget-zfish-grid-frame-50.png | 4 ++-- .../screenshots/nb-image-widget-zfish-grid-frame-99.png | 4 ++-- ...b-image-widget-zfish-grid-set_data-reset-indices-false.png | 4 ++-- ...nb-image-widget-zfish-grid-set_data-reset-indices-true.png | 4 ++-- .../screenshots/nb-image-widget-zfish-init-mean-window-5.png | 4 ++-- .../nb-image-widget-zfish-mixed-rgb-cockatoo-frame-50.png | 4 ++-- .../nb-image-widget-zfish-mixed-rgb-cockatoo-set-data.png | 4 ++-- .../nb-image-widget-zfish-mixed-rgb-cockatoo-windowrgb.png | 4 ++-- 27 files changed, 54 insertions(+), 54 deletions(-) diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-0-reset.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-0-reset.png index bb2e1ee37..0129cb423 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-0-reset.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-0-reset.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c9b898259fc965452ef0b6ff53ac7fa41196826c6e27b6b5d417d33fb352051 -size 112399 +oid sha256:d3f5a721456b5a54e819fc987b8fa1f61d638f578339a7332ad46a22e7aa8fc0 +size 112674 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-0.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-0.png index bb2e1ee37..0129cb423 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-0.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-0.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6c9b898259fc965452ef0b6ff53ac7fa41196826c6e27b6b5d417d33fb352051 -size 112399 +oid sha256:d3f5a721456b5a54e819fc987b8fa1f61d638f578339a7332ad46a22e7aa8fc0 +size 112674 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-279.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-279.png index 1841cd237..4908c8b59 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-279.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-279.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9cbc2a6916c7518d40812a13276270eb1acfc596f3e6e02e98a6a5185da03a4 -size 132971 +oid sha256:4511a28e728af412f5006bb456f133aea1fdc9c1922c3174f127c79d9878401d +size 133635 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-max-33.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-max-33.png index 6cc1821fa..cfdc3c8a9 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-max-33.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-max-33.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:070748e90bd230a01d3ae7c6d6487815926b0158888a52db272356dc8b0a89d7 -size 119453 +oid sha256:c6910106cd799a4327a6650edbc956ddb9b6a489760b86b279c593575ae805b8 +size 120114 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-13.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-13.png index 3865aef93..92513cf5b 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-13.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-13.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b24450ccf1f8cf902b8e37e73907186f37a6495f227dcbd5ec53f75c52125f56 -size 105213 +oid sha256:8233dfc429a7fefe96f0fdb89eb2c57188b7963c16db5d1d08f7faefb45d8cb7 +size 105755 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-33.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-33.png index 025086930..8bce59baf 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-33.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-mean-33.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3dfc8e978eddf08d1ed32e16fbf93c037ccdf5f7349180dcda54578a8c9e1a18 -size 97359 +oid sha256:a4af684cdaec8f98081862eb8a377cd419efec64cdf08b662a456276b78f1fb5 +size 98091 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-reset.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-reset.png index 5ff5052b0..61c3c4f6c 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-reset.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-50-window-reset.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00130242d3f199926604df16dda70a062071f002566a8056e4794805f29adfde -size 118044 +oid sha256:133dfe6b0028dda6248df1afde1288c57625be99b25c8224673597de4d4f70fc +size 118588 diff --git a/examples/notebooks/screenshots/nb-image-widget-movie-single-50.png b/examples/notebooks/screenshots/nb-image-widget-movie-single-50.png index 5ff5052b0..61c3c4f6c 100644 --- a/examples/notebooks/screenshots/nb-image-widget-movie-single-50.png +++ b/examples/notebooks/screenshots/nb-image-widget-movie-single-50.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:00130242d3f199926604df16dda70a062071f002566a8056e4794805f29adfde -size 118044 +oid sha256:133dfe6b0028dda6248df1afde1288c57625be99b25c8224673597de4d4f70fc +size 118588 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-gaussian.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-gaussian.png index 13297e09f..29fe20f44 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-gaussian.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-gaussian.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:70c7738ed303f5a3e19271e8dfc12ab857a6f3aff767bdbecb485b763a09913e -size 55584 +oid sha256:87a3947d6c59c7f67acca25911e0ab93ddc9231a8c3060d2fffe3c53f39055f2 +size 62263 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-reset.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-reset.png index b8307bc44..c7944f591 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-reset.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-frame-apply-reset.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:66a435e45dc4643135633115af2eeaf70761e408a94d70d94d80c14141574528 -size 69343 +oid sha256:b57c65974362d258ec7be8de391c41d7909ed260b92411f4b0ed8ed03b886a29 +size 73040 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-max-window-13.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-max-window-13.png index d6237dc9f..eb9c9059d 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-max-window-13.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-max-window-13.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:731f225fa2de3457956b2095d1cc539734983d041b13d6ad1a1f9d8e7ebfa4bc -size 115239 +oid sha256:008381b267ae26e8693ae51e7a4fabc464288ec8aa911ff3a1deb37543cc4fbe +size 115543 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-13.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-13.png index ecf63a369..8b887f5fd 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-13.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-13.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7e2d70159ac47c004acb022b3a669e7bd307299ddd590b83c08854b0dba27b70 -size 93885 +oid sha256:fedfec781724d4731f8cc34ffc39388d14dc60dad4a9fae9ff56625edf11f87a +size 94178 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-5.png index e7106fae9..ef3aa7a92 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-5.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50-mean-window-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1756783ab90435b46ded650033cf29ac36d2b4380744bf312caa2813267f7f38 -size 89813 +oid sha256:08e8379187754fa14f360ed54f2ed8cf61b3df71a8b6f2e95ff1ed27aa435d60 +size 90105 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50.png index ddd4f85ca..c7944f591 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-50.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a35e2e4b892b55f5d2500f895951f6a0289a2df3b69cf12f59409bbc091d1caf -size 72810 +oid sha256:b57c65974362d258ec7be8de391c41d7909ed260b92411f4b0ed8ed03b886a29 +size 73040 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-99.png b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-99.png index d9971c3fd..0d19a35ce 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-frame-99.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-frame-99.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3bdb0ed864c8a6f2118cfe0d29476f61c54576f7b8e041f3c3a895ba0a440c05 -size 65039 +oid sha256:848e89e38b9b5ef97d6bb4b301c0ae10cc29f438518721663ae52fa42f492408 +size 65267 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-gaussian.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-gaussian.png index 6736e108c..96a3b12c8 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-gaussian.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-gaussian.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7ae7c86bee3a30bde6cfa44e1e583e6dfd8de6bb29e7c86cea9141ae30637b4a -size 80627 +oid sha256:17cd05ae14cacdef6aa1eca3544246b814ef21762a33f6e785f6d621ea30ff96 +size 80570 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-reset.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-reset.png index dce99223b..1df19c904 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-reset.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-frame-apply-reset.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b51a5d26f2408748e59e3ee481735694f8f376539b50deb2b5c5a864b7de1079 -size 105581 +oid sha256:a673fa1ffa6f746ab9f462b4d592492ec02bfdd3fb53bdf1f71fb9427f8d6d23 +size 105798 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-max-window-13.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-max-window-13.png index cdea3673d..43230f8be 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-max-window-13.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-max-window-13.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e854f7f2fdaeeac6c8358f94a33698b5794c0f6c55b240d384e8c6d51fbfb0ff -size 143301 +oid sha256:446d54cea3d54b0fd92b70abcc090cfee30b19454dce118d9875fbeb8b40b4a8 +size 141294 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-13.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-13.png index 25a2fa53e..0841a8e08 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-13.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-13.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c8c8d3c59c145a4096deceabc71775a03e5e121e82509590787c768944d155bd -size 110744 +oid sha256:99d3706d5574a1236264f556eb3ce6d71e81b65bd8dcce1c1415e5f139316c23 +size 107894 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50.png index 3b5594c64..1df19c904 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d28a4be4c76d5c0da5f5767b169acf7048a268b010f33f96829a5de7f06fd7d -size 107477 +oid sha256:a673fa1ffa6f746ab9f462b4d592492ec02bfdd3fb53bdf1f71fb9427f8d6d23 +size 105798 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-99.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-99.png index 239237b45..06ed02628 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-99.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-99.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:30dba982c9a605a7a3c0f2fa6d8cdf0df4160b2913a95b26ffdb6b04ead12add -size 104603 +oid sha256:4d3e88eee05bc68dd17918197602fb5c0a959ad74a4f592aea4514e570d29232 +size 103431 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-false.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-false.png index 498b19cb7..412822a40 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-false.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-false.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a8e899b48881e3eb9200cc4e776db1f865b0911c340c06d4009b3ae12aa1fc85 -size 105421 +oid sha256:8203f859fe54e2b59a143a9a569c2854640b1501b9ab4f8512520bbf73dae3c6 +size 105658 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-true.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-true.png index 369168141..234924487 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-true.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-set_data-reset-indices-true.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:93933e7ba5f791072df2934c94a782e39ed97f7db5b55c5d71c8c5bbfc69d800 -size 106360 +oid sha256:8ca187ba67e7928c8f96b1f9a0a18bec65f81352701e60c33d47aaadb2756d5c +size 106446 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-init-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-init-mean-window-5.png index b62721be2..870945ce7 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-init-mean-window-5.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-init-mean-window-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bf38b2af1ceb372cd0949d42c027acb5fcc4c6b9a8f38c5aacdce1cd14e290fe -size 78533 +oid sha256:f42367c833a23d3fe10c6fb0d754338c12a30288d9769ad3f8b1159505abf8ff +size 78796 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-frame-50.png b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-frame-50.png index 76ed01a7c..7880fc1d8 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-frame-50.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-frame-50.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ff462d24820f0bdd509e58267071fa956b5c863b8b8d66fea061c5253b7557cf -size 113926 +oid sha256:cb99cd81a18fa2f8986c5f00071c45dc778c8aa177f4b02dca6bc5fab122b054 +size 114825 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-set-data.png b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-set-data.png index d9a593ee7..82f3d0a9b 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-set-data.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-set-data.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b8fd14f8e8a90c3cd3fbb84a00d50b1b826b596d64dfae4a5ea1bab0687d906 -size 110829 +oid sha256:31b2b92b9d983950b58b90a09f16199740e35a0737fc1b18904f507ea322d8f2 +size 111118 diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-windowrgb.png b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-windowrgb.png index cf10c6d42..1446c8941 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-windowrgb.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-mixed-rgb-cockatoo-windowrgb.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d88c64b716d19a3978bd60f8d75ffe09e022183381898fa1c48b77598be8fb7c -size 111193 +oid sha256:0fb724e005c6e081ae3bf235e155f3f526c3480facac7479d9b9452aae81baf0 +size 111437 From eb37f2501838e3bea7613924f6853849b8df393d Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Tue, 8 Apr 2025 22:28:18 -0400 Subject: [PATCH 20/22] force git to refresh --- .../nb-image-widget-zfish-grid-frame-50-mean-window-5.png | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png deleted file mode 100644 index 00a4a1fd2..000000000 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c4b4af7b99cad95ea3f688af8633de24b6602bd700cb244f93c28718af2e1e85 -size 114982 From 4c245d3703063a078894d343997043399ca0002f Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Wed, 9 Apr 2025 21:34:56 -0400 Subject: [PATCH 21/22] nb-iw from regen screenshots --- .../nb-image-widget-zfish-grid-frame-50-mean-window-5.png | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png new file mode 100644 index 000000000..00a4a1fd2 --- /dev/null +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4b4af7b99cad95ea3f688af8633de24b6602bd700cb244f93c28718af2e1e85 +size 114982 From 8a785c188ff5be237c7c7c1e9137daf7b7996dee Mon Sep 17 00:00:00 2001 From: Flynn OConnell Date: Thu, 10 Apr 2025 13:44:08 -0400 Subject: [PATCH 22/22] plzplzplzplzplz work --- .../nb-image-widget-zfish-grid-frame-50-mean-window-5.png | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png index 00a4a1fd2..28bab9f02 100644 --- a/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png +++ b/examples/notebooks/screenshots/nb-image-widget-zfish-grid-frame-50-mean-window-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c4b4af7b99cad95ea3f688af8633de24b6602bd700cb244f93c28718af2e1e85 -size 114982 +oid sha256:ffa17fc1b71c5146cae88493ed40c606dd0a99f3e10f3827ac349d5a5d6f6108 +size 112702