Skip to content

Commit 6349077

Browse files
committed
Add contrast limits to histogram plot
1 parent 5e59bd3 commit 6349077

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

src/napari_matplotlib/histogram.py

+22
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,24 @@ def __init__(
2929
):
3030
super().__init__(napari_viewer, parent=parent)
3131
self._update_layers(None)
32+
self.viewer.events.theme.connect(self._on_napari_theme_changed)
33+
34+
def on_update_layers(self) -> None:
35+
"""
36+
Called when the selected layers are updated.
37+
"""
38+
super().on_update_layers()
39+
for layer in self.viewer.layers:
40+
layer.events.contrast_limits.connect(self._update_contrast_lims)
41+
42+
def _update_contrast_lims(self) -> None:
43+
[
44+
line.set_xdata(lim)
45+
for lim, line in zip(
46+
self.layers[0].contrast_limits, self._contrast_lines
47+
)
48+
]
49+
self.figure.canvas.draw()
3250

3351
def draw(self) -> None:
3452
"""
@@ -62,6 +80,10 @@ def draw(self) -> None:
6280
else:
6381
self.axes.hist(data.ravel(), bins=bins, label=layer.name)
6482

83+
self._contrast_lines = [
84+
self.axes.axvline(lim, color="white")
85+
for lim in layer.contrast_limits
86+
]
6587
self.axes.legend()
6688

6789

0 commit comments

Comments
 (0)