diff --git a/fastplotlib/widgets/image.py b/fastplotlib/widgets/image.py index 9dbad277e..1b19768ce 100644 --- a/fastplotlib/widgets/image.py +++ b/fastplotlib/widgets/image.py @@ -113,6 +113,34 @@ def managed_graphics(self) -> List[ImageGraphic]: iw_managed.append(subplot["image_widget_managed"]) return iw_managed + @property + def cmap(self) -> List[str]: + cmaps = list() + for g in self.managed_graphics: + cmaps.append(g.cmap.name) + + return cmaps + + @cmap.setter + def cmap(self, names: Union[str, List[str]]): + if isinstance(names, list): + if not all([isinstance(n, str) for n in names]): + raise TypeError(f"Must pass cmap name as a `str` of list of `str`, you have passed:\n{names}") + + if not len(names) == len(self.managed_graphics): + raise IndexError( + f"If passing a list of cmap names, the length of the list must be the same as the number of " + f"image widget subplots. You have passed: {len(names)} cmap names and have " + f"{len(self.managed_graphics)} image widget subplots" + ) + + for name, g in zip(names, self.managed_graphics): + g.cmap = name + + elif isinstance(names, str): + for g in self.managed_graphics: + g.cmap = names + @property def data(self) -> List[np.ndarray]: """data currently displayed in the widget""" pFad - Phonifier reborn

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

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


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy