diff --git a/glue_wwt/viewer/jupyter_viewer.py b/glue_wwt/viewer/jupyter_viewer.py index 84431a2c..55b6618d 100644 --- a/glue_wwt/viewer/jupyter_viewer.py +++ b/glue_wwt/viewer/jupyter_viewer.py @@ -90,20 +90,22 @@ def __init__(self, viewer_state, available_layers): self.widget_constellation_boundaries = LinkedDropdown(self.state, 'constellation_boundaries', label="Boundaries:") self.widget_constellation_boundary_color = linked_color_picker(self.state, 'constellation_boundary_color', - description="Boundary") + description="Boundary") dlink((self.widget_constellation_boundaries, 'value'), (self.widget_constellation_boundary_color, 'disabled'), lambda value: value != "All") self.widget_constellation_selection_color = linked_color_picker(self.state, 'constellation_selection_color', - description="Selection") + description="Selection") dlink((self.widget_constellation_boundaries, 'value'), (self.widget_constellation_selection_color, 'disabled'), lambda value: value == "None") self.widget_constellation_figures = linked_checkbox(self.state, 'constellation_figures', description="Figures") self.widget_constellation_figure_color = linked_color_picker(self.state, 'constellation_figure_color', - description="Figure") + description="Figure") set_enabled_from_checkbox(self.widget_constellation_figure_color, self.widget_constellation_figures) - self.widget_constellation_labels = linked_checkbox(self.state, 'constellation_labels', description="Labels") - self.widget_constellation_pictures = linked_checkbox(self.state, 'constellation_pictures', description="Pictures") + self.widget_constellation_labels = linked_checkbox(self.state, 'constellation_labels', + description="Labels") + self.widget_constellation_pictures = linked_checkbox(self.state, 'constellation_pictures', + description="Pictures") constellations_hbox_layout = Layout(gap="10px", justify_content="space-between") constellations_vbox_layout = Layout(height="fit-content", gap="2px", padding="5px", flex_direction="column") @@ -150,18 +152,17 @@ def __init__(self, viewer_state, available_layers): self.widget_min_time = NaiveDatetimePicker(description="Min Time:") link((self.state, 'min_time'), (self.widget_min_time, 'value'), lambda time: self._datetime64_to_utc_datetime(time), - lambda value: datetime64(value) - ) + lambda value: datetime64(value)) self.widget_max_time = NaiveDatetimePicker(description="Max Time:") link((self.state, 'max_time'), (self.widget_max_time, 'value'), lambda time: self._datetime64_to_utc_datetime(time), - lambda value: datetime64(value) - ) + lambda value: datetime64(value)) self.other_settings = VBox(children=[ GridBox(children=[self.widget_ecliptic_label, self.widget_ecliptic, self.widget_ecliptic_color, self.widget_precession_chart_label, - self.widget_precession_chart, self.widget_precession_chart_color], + self.widget_precession_chart, + self.widget_precession_chart_color], layout=Layout(grid_template_columns="60% 20% 20%", width="100%", grid_gap="2px 10px")), VBox(children=[self.widget_play_time, self.widget_clock_rate, @@ -169,7 +170,6 @@ def __init__(self, viewer_state, available_layers): self.widget_min_time, self.widget_max_time]) ]) - self.settings = Accordion(children=[self.general_settings, self.grid_settings, self.constellation_settings, self.other_settings], layout=Layout(width="350px")) @@ -232,7 +232,7 @@ def __init__(self, layer_state): self.state = layer_state self.color_widgets = Color(state=self.state) self.size_widgets = Size(state=self.state) - + self.widget_time_series = linked_checkbox(self.state, 'time_series', description="Time series") self.widget_time_att = LinkedDropdown(self.state, 'time_att', 'Time att') self.widget_time_decay_value = linked_float_text(self.state, 'time_decay_value', diff --git a/glue_wwt/viewer/options_widget.py b/glue_wwt/viewer/options_widget.py index 25db9d14..381d300e 100644 --- a/glue_wwt/viewer/options_widget.py +++ b/glue_wwt/viewer/options_widget.py @@ -54,11 +54,11 @@ def _setup_widget_dependencies(self): set_enabled_from_checkbox(self.ui.color_precession_chart_color, self.ui.bool_precession_chart) enabled_if_combosel_in(self.ui.color_constellation_boundary_color, - self.ui.combosel_constellation_boundaries, - ['All']) + self.ui.combosel_constellation_boundaries, + ['All']) enabled_if_combosel_in(self.ui.color_constellation_selection_color, - self.ui.combosel_constellation_boundaries, - ['All', 'Selection only']) + self.ui.combosel_constellation_boundaries, + ['All', 'Selection only']) def _update_visible_options(self, *args, **kwargs): @@ -96,7 +96,8 @@ def _update_visible_options(self, *args, **kwargs): self.ui.label_lat_att.setText('Latitude') def _update_slider_fraction(self, *args): - fraction = (self._viewer_state.current_time - self._viewer_state.min_time) / (self._viewer_state.max_time - self._viewer_state.min_time) + fraction = (self._viewer_state.current_time - self._viewer_state.min_time) / \ + (self._viewer_state.max_time - self._viewer_state.min_time) slider_min = self.ui.slider_current_time.minimum() slider_max = self.ui.slider_current_time.maximum() value = round(slider_min + fraction * (slider_max - slider_min)) @@ -107,7 +108,7 @@ def _on_current_time_update(self, time): self._update_slider_fraction() try: self.ui.label_current_time.setText(f"Current Time: {time.astype('datetime64[ms]')}") - except: + except Exception: pass def _on_slider_changed(self, *args): @@ -118,7 +119,8 @@ def _on_slider_changed(self, *args): slider_min = self.ui.slider_current_time.minimum() slider_max = self.ui.slider_current_time.maximum() fraction = (value - slider_min) / (slider_max - slider_min) - self._viewer_state.current_time = self._viewer_state.min_time + fraction * (self._viewer_state.max_time - self._viewer_state.min_time) + self._viewer_state.current_time = self._viewer_state.min_time + \ + fraction * (self._viewer_state.max_time - self._viewer_state.min_time) def _update_time_bounds(self, *args): min_time = self._viewer_state.min_time @@ -130,4 +132,3 @@ def _update_time_bounds(self, *args): self._viewer_state.min_time = min_time self._viewer_state.max_time = max_time - diff --git a/glue_wwt/viewer/table_layer.py b/glue_wwt/viewer/table_layer.py index 8c767fd3..2f705167 100644 --- a/glue_wwt/viewer/table_layer.py +++ b/glue_wwt/viewer/table_layer.py @@ -251,9 +251,11 @@ def _update_presentation(self, force=False, **kwargs): if self.state.time_series and self.state.time_att is not None: try: - # Providing datetime objects as the time values offers noticeably better performance than either datetime strings or astropy Time objects + # Providing datetime objects as the time values offers noticeably better performance + # than either datetime strings or astropy Time objects. # This is likely due to the time attribute value validation in pywwt - time_values = [datetime.fromisoformat(datetime_as_string(t, unit='s', timezone='UTC')) for t in self.layer[self.state.time_att]] + time_values = [datetime.fromisoformat(datetime_as_string(t, unit='s', timezone='UTC')) + for t in self.layer[self.state.time_att]] except IncompatibleAttribute: self.disable_invalid_attributes(self.state.time_att) return diff --git a/glue_wwt/viewer/time_dialog.py b/glue_wwt/viewer/time_dialog.py index f164632f..55629aff 100644 --- a/glue_wwt/viewer/time_dialog.py +++ b/glue_wwt/viewer/time_dialog.py @@ -1,5 +1,5 @@ import os -from datetime import datetime +from datetime import datetime from qtpy.QtCore import QDate, QTime from qtpy.QtWidgets import QDialog diff --git a/glue_wwt/viewer/viewer_state.py b/glue_wwt/viewer/viewer_state.py index e972c5f7..9489a89d 100644 --- a/glue_wwt/viewer/viewer_state.py +++ b/glue_wwt/viewer/viewer_state.py @@ -159,4 +159,3 @@ def _on_current_time_update(self, time): elif time > self.max_time: self.current_time = self.max_time self.play_time = False -