@@ -99,7 +99,7 @@ def __init__(self, *, vertical: bool = False) -> None:
99
99
100
100
## -- Plot -- ##
101
101
self .plot = PlotWidget ()
102
- self .plot .lock_axis ("y" )
102
+ # self.plot.lock_axis("y")
103
103
self ._canvas .central_widget .add_widget (self .plot )
104
104
self .node_tform = self .plot .node_transform (self .plot ._view .scene )
105
105
@@ -137,13 +137,13 @@ def set_gamma(self, gamma: float) -> None:
137
137
if gamma < 0 :
138
138
raise ValueError ("gamma must be non-negative!" )
139
139
self ._gamma = gamma
140
- self ._update_lut_lines ()
140
+ self ._update_lut_ctrls ()
141
141
142
142
def set_clims (self , clims : tuple [float , float ]) -> None :
143
143
if clims [1 ] < clims [0 ]:
144
144
clims = (clims [1 ], clims [0 ])
145
145
self ._clims = clims
146
- self ._update_lut_lines ()
146
+ self ._update_lut_ctrls ()
147
147
148
148
def set_clim_policy (self , policy : ClimPolicy ) -> None :
149
149
# Nothing to do (yet)
@@ -192,23 +192,19 @@ def set_vertical(self, vertical: bool) -> None:
192
192
self .plot .lock_axis ("x" if vertical else "y" )
193
193
# When vertical, smaller values should appear at the top of the canvas
194
194
self .plot .camera .flip = [False , vertical , False ]
195
- self ._update_lut_lines ()
195
+ self ._update_lut_ctrls ()
196
196
self ._resize ()
197
197
198
198
def set_log_base (self , base : float | None ) -> None :
199
199
if base != self ._log_base :
200
- if self ._log_base is not None and self ._range :
201
- self ._range = tuple (self ._log_base ** x for x in self ._range )
202
- self ._log_base = None if base is None else 2 ** base
203
- if self ._log_base is not None and self ._range :
204
- self ._range = tuple (
205
- np .log (x ) / np .log (self ._log_base ) for x in self ._range
206
- )
200
+ self ._log_base = base
201
+ # Update histogram
207
202
self ._update_histogram ()
208
- self . _update_lut_lines ()
203
+ # Resize vertical axis
209
204
camera_rect = self .plot .camera .rect
210
205
self ._resize (x = (camera_rect .left , camera_rect .right ))
211
- # HACK: Disable labels for log axis - there has to be a better way
206
+
207
+ # Disable labels for log axis - there has to be a better way
212
208
self .plot .yaxis .axis .tick_color = (
213
209
(0 , 0 , 0 , 0 ) if base is not None else (1 , 1 , 1 , 1 )
214
210
)
@@ -252,7 +248,12 @@ def _update_histogram(self) -> None:
252
248
# Looks like https://github.com/vispy/vispy/issues/1899
253
249
self ._hist_mesh ._bounds_changed ()
254
250
255
- def _update_lut_lines (self , npoints : int = 256 ) -> None :
251
+ def _update_lut_ctrls (self , npoints : int = 256 ) -> None :
252
+ """
253
+ Updates the DOMAIN of the lut controls.
254
+
255
+ Note that the RANGE is automatically scaled in _resize()
256
+ """
256
257
if self ._clims is None or self ._gamma is None :
257
258
return # pragma: no cover
258
259
0 commit comments