ndscope issueshttps://git.ligo.org/cds/software/ndscope/-/issues2024-03-14T16:52:50Zhttps://git.ligo.org/cds/software/ndscope/-/issues/337Time axis resets when adding a channel to a new plot2024-03-14T16:52:50ZThomas ShafferTime axis resets when adding a channel to a new plotSimilar to cds/software/ndscope#297, but if you add a new plot then add a channel to it, the time axis will then reset.Similar to cds/software/ndscope#297, but if you add a new plot then add a channel to it, the time axis will then reset.https://git.ligo.org/cds/software/ndscope/-/issues/338channel selector does not accept wild cards (*, etc)2024-03-02T21:04:17ZRana Adhikarichannel selector does not accept wild cards (*, etc)when pickin chans, we want to be able to put in a string like `SUS-ETMX*OP*` and get all the OPLEV channels.
But ndscope don't seem to know about no starswhen pickin chans, we want to be able to put in a string like `SUS-ETMX*OP*` and get all the OPLEV channels.
But ndscope don't seem to know about no starshttps://git.ligo.org/cds/software/ndscope/-/issues/332"add plot" should take channel from clipboard2024-03-01T21:45:10ZJameson Rollinsjameson.rollins@ligo.org"add plot" should take channel from clipboardfrom Daniel S.from Daniel S.https://git.ligo.org/cds/software/ndscope/-/issues/336change status link to point to release notes2024-03-01T21:45:10ZJameson Rollinsjameson.rollins@ligo.orgchange status link to point to release noteshttps://git.ligo.org/cds/software/ndscope/-/issues/333copy channel names from channel config dialog2024-03-01T21:45:10ZJameson Rollinsjameson.rollins@ligo.orgcopy channel names from channel config dialogshould just be a matter of enabling copy for that field in the table.should just be a matter of enabling copy for that field in the table.https://git.ligo.org/cds/software/ndscope/-/issues/329yrange in ndscope templates is only working for final plot2024-03-01T17:50:18ZCamilla Comptonyrange in ndscope templates is only working for final plotIn saved .yaml templates, the `yrange` is being ignored and auto scaled in all plots apart from the final plot. Example attached.
![image](/uploads/8a476eaa8e6edff3d64d8ccf068a95a7/image.png)
![image](/uploads/bb98d207eeb1b4877d938b50...In saved .yaml templates, the `yrange` is being ignored and auto scaled in all plots apart from the final plot. Example attached.
![image](/uploads/8a476eaa8e6edff3d64d8ccf068a95a7/image.png)
![image](/uploads/bb98d207eeb1b4877d938b506dee08db/image.png)https://git.ligo.org/cds/software/ndscope/-/issues/335online restart broken with append buffer AssertionError2024-03-01T16:17:12ZJameson Rollinsjameson.rollins@ligo.orgonline restart broken with append buffer AssertionErrorIt looks like it's all because the extendleft fetch is returning before the iterator, which it definitely shouldn't:
```
DATA : channel added: H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT
DATA : ONLINE RESTART
DATA : ONLINE STOP
PLOT: plot (0, 0) Y rang...It looks like it's all because the extendleft fetch is returning before the iterator, which it definitely shouldn't:
```
DATA : channel added: H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT
DATA : ONLINE RESTART
DATA : ONLINE STOP
PLOT: plot (0, 0) Y range: auto
DATA : REQUEST: raw (1393201944.0351734, 1393201966.0898266)
DATA : CMD: extendleft {'trend': 'raw', 'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'start_end': (1393201933, 1393201945)}
DATA : CMD: extend {'trend': 'raw', 'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'start_end': (1393201965, 1393201978)}
DATA : BUSY: no extend while online
NDS : fetch(**{'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'gps_start': 1393201933, 'gps_stop': 1393201945, 'params': <nds2.parameters; proxy of <Swig Object of type 'parameters *' at 0x7fdb98a98c90> >})
DATA : DONE: ('online', None)
DATA : _START
DATA : RESET
DATA : CMD: online {'trend': 'raw', 'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT']}
SCOPE: crosshair disabled
SCOPE: time axis mode: relative
NDS : iterate(**{'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'stride': -1, 'params': <nds2.parameters; proxy of <Swig Object of type 'parameters *' at 0x7fdb98a991a0> >})
DATA : CMD: extendleft {'trend': 'raw', 'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'start_end': (1393201911.0, 1393201945.0)}
DATA : DONE: ('extendleft-raw', None)
NDS : fetch(**{'channels': ['H1:SQZ-CLF_TRIG_DC_POWERMON', 'H1:SQZ-FC_WFS_A_Q_SUM_OUTPUT'], 'gps_start': 1393201911, 'gps_stop': 1393201945, 'params': <nds2.parameters; proxy of <Swig Object of type 'parameters *' at 0x7fdbfb9ac270> >})
DATA : DONE: ('extendleft-raw', None)
Traceback (most recent call last):
File "/var/opt/conda/base/envs/cds/lib/python3.10/site-packages/ndscope/cache.py", line 433, in remote_recv_data
self.db[trend].append(dbd)
File "/var/opt/conda/base/envs/cds/lib/python3.10/site-packages/ndscope/data.py", line 238, in append
self.buffers[chan].append(buf)
File "/var/opt/conda/base/envs/cds/lib/python3.10/site-packages/ndscope/data.py", line 144, in append
assert buf.gps_start == self.gps_end, "append buffer start {} does not equal end {}".format(buf.gps_start, self.gps_end)
AssertionError: append buffer start 1393201966.0 does not equal end 1393201945.0
```https://git.ligo.org/cds/software/ndscope/-/issues/297Time axis resets when a new channel is added2024-02-29T22:17:46ZGeorgia MansellTime axis resets when a new channel is addedWhen I right-click and add a new channel to a plot, the time axis resets to its original time and spacing.When I right-click and add a new channel to a plot, the time axis resets to its original time and spacing.https://git.ligo.org/cds/software/ndscope/-/issues/328y-cursors get confused on log mode Y axis2024-02-16T19:23:12ZJameson Rollinsjameson.rollins@ligo.orgy-cursors get confused on log mode Y axiswhen switching to log mode Y axis scale the Y cursors get very confused. The values shown in the labels are not correct, and the positions of the cursors is often way off the screen.
we thought we fixed this in 6f8431a902f8547a8ef7dded...when switching to log mode Y axis scale the Y cursors get very confused. The values shown in the labels are not correct, and the positions of the cursors is often way off the screen.
we thought we fixed this in 6f8431a902f8547a8ef7dded76cefbfb01b34621 but apparently we didn'thttps://git.ligo.org/cds/software/ndscope/-/issues/278Separate channel selection and setting of curve parameters2024-02-15T22:49:22ZPatrick ThomasSeparate channel selection and setting of curve parametersIf I specify the list of channels on the command line, and then once ndscope is running I just want to change the color, offset, scale or line width of one or more of those channels, I have to wait for it to get the channel list from nds...If I specify the list of channels on the command line, and then once ndscope is running I just want to change the color, offset, scale or line width of one or more of those channels, I have to wait for it to get the channel list from nds before it will show the channel selection dialog where those parameters can be changed. This should not be necessary. One solution is to make the setting of the parameters separate from the setting of the channel list.https://git.ligo.org/cds/software/ndscope/-/issues/326ndscope 0.18.1.dev63+g346e889 If a channel has a scale and/or offset value ap...2024-02-15T22:49:22ZDavid Barkerndscope 0.18.1.dev63+g346e889 If a channel has a scale and/or offset value applied, it gets re-applied by the 'configure channels for plot' windowIf a scale and/or offset value is applied to a channel, then every time the 'configure channels for plot' window is closed by pressing the OK button, the scale/offset is reapplied to the data. This is the case when only the label/units f...If a scale and/or offset value is applied to a channel, then every time the 'configure channels for plot' window is closed by pressing the OK button, the scale/offset is reapplied to the data. This is the case when only the label/units fields are changed, or if there were no changes made.
Closing the window using the Cancel button does not do this.Jameson Rollinsjameson.rollins@ligo.orgJameson Rollinsjameson.rollins@ligo.orghttps://git.ligo.org/cds/software/ndscope/-/issues/230data backend retains data for deleted channels2024-02-15T22:49:21ZJameson Rollinsjameson.rollins@ligo.orgdata backend retains data for deleted channelsA [FIXME in data.py](ndscope/data.py#L355) notes that we are not purging references to channels that are completely removed from the system, meaning we could be holding on to stale data unnecessarily. Should figure out how to properly p...A [FIXME in data.py](ndscope/data.py#L355) notes that we are not purging references to channels that are completely removed from the system, meaning we could be holding on to stale data unnecessarily. Should figure out how to properly purge channels that are no longer referenced.https://git.ligo.org/cds/software/ndscope/-/issues/299Add option to have cursors on all plots2024-02-15T22:49:21ZGeorgia MansellAdd option to have cursors on all plotsThis used to be the only way to have cursors, and I'm glad we can do single cursor now, but it would be nice to have the option to have the cursor on all plots.This used to be the only way to have cursors, and I'm glad we can do single cursor now, but it would be nice to have the option to have the cursor on all plots.https://git.ligo.org/cds/software/ndscope/-/issues/313Make cursor labels optional2024-02-15T22:49:21ZEvan HallMake cursor labels optionalIn some circumstances, the exact numerical values of the cursors (and their diffs) are not important and can cover up the data traces. It would be nice to have a tick box (and a keyword in the template) that enables people to turn off th...In some circumstances, the exact numerical values of the cursors (and their diffs) are not important and can cover up the data traces. It would be nice to have a tick box (and a keyword in the template) that enables people to turn off the cursor labels. (Labels should perhaps be enabled by default to preserve the existing behavior.)https://git.ligo.org/cds/software/ndscope/-/issues/323ndscope 0.18.1.dev39+g2a1cf30 fails to run if log-scale set to true in yaml file2024-02-15T22:49:21ZDavid Barkerndscope 0.18.1.dev39+g2a1cf30 fails to run if log-scale set to true in yaml fileVersion 0.18.1.dev39+g2a1cf30
If yaml file has the line:
`log-scale: true`
The command:
david.barker@opslogin0: ndscope-dev /tmp/test.yaml
```
Does not run, it gives the output:
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8740>
<PyQt5.Qt...Version 0.18.1.dev39+g2a1cf30
If yaml file has the line:
`log-scale: true`
The command:
david.barker@opslogin0: ndscope-dev /tmp/test.yaml
```
Does not run, it gives the output:
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8740>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf93f0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf9850>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf9850>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfa1f0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfa7a0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8a50>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8cf0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8740>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf8740>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf9e00>
<PyQt5.QtGui.QColor object at 0x7f1fd5cf9850>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfa110>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfbed0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfa730>
<PyQt5.QtGui.QColor object at 0x7f1fd5cfa730>
<PyQt5.QtGui.QColor object at 0x7f1fd5cc06d0>
<PyQt5.QtGui.QColor object at 0x7f1fd5cc0ba0>
Traceback (most recent call last):
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/plotMenu.py", line 401, in yLogModeToggled
self.plot().set_log_mode(state == QtCore.Qt.Checked)
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/plot.py", line 358, in set_log_mode
self.y_cursors.redraw()
AttributeError: 'YCursors' object has no attribute 'redraw'
Traceback (most recent call last):
File "/ligo/home/jameson.rollins/opt/ndscope-dev/bin/ndscope", line 8, in <module>
sys.exit(main())
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/__main__.py", line 390, in main
scope.load_template(template)
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/scope.py", line 843, in load_template
add_plot(plot0)
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/scope.py", line 836, in add_plot
plot = self.add_plot(**p)
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/scope.py", line 633, in add_plot
plot.set_log_mode(log_scale)
File "/ligo/home/jameson.rollins/opt/ndscope-dev/lib/python3.10/site-packages/ndscope/plot.py", line 358, in set_log_mode
self.y_cursors.redraw()
AttributeError: 'YCursors' object has no attribute 'redraw'
```
Removing the 'log-scale' line from the yaml file permits the command to run.
Full yaml file listing:
```
color-mode: light
font-size: 6
plots:
- channels:
H0:VAC-LY_CP1_LIC100_LLCV_POS_CTRL_PCT:
color: '#ffa500'
offset: 0
scale: 1
unit: null
width: 2
H0:VAC-LY_CP1_PT101_DISCHARGE_PRESS_PSIG:
color: '#ff69b4'
offset: 0
scale: 1000
unit: null
width: 2
H0:VAC-LY_CP1_TE102A_DISCHARGE_TEMP_DEGC:
color: '#0000ff'
offset: 0
scale: -1
unit: null
width: 2
H0:VAC-LY_CP1_TE102B_DISCHARGE_TEMP_DEGC:
color: '#48d1cc'
offset: 0
scale: -1
unit: null
width: 2
col: 0
colspan: 1
log-scale: true
row: 0
rowspan: 1
t-cursors:
- -646
- -300
y-cursors:
- 70.0
- 100.0
yrange: auto
t0: 1390155064
time-axis-mode: absolute local
time-window:
- -946
- 0.0
window-title: test
```https://git.ligo.org/cds/software/ndscope/-/issues/289Add option to set units to Y-axis2024-02-15T22:49:21ZErik von ReisAdd option to set units to Y-axisUnits can be included as a separate argument to the setLabel() method on the Y axis. This might help with reading some graphs. Combined with AutoSIPrefix=True, PyQT graph can automatically prepend a prefix 'm' to a unit 'V' to plot mil...Units can be included as a separate argument to the setLabel() method on the Y axis. This might help with reading some graphs. Combined with AutoSIPrefix=True, PyQT graph can automatically prepend a prefix 'm' to a unit 'V' to plot millivolts, for example. These should be user customizable. See #288.https://git.ligo.org/cds/software/ndscope/-/issues/194AssertionError: append buffer start XXX does not equal end YYY2024-01-27T01:05:57ZSheila DwyerAssertionError: append buffer start XXX does not equal end YYYI have been having a lot of ndscope crashes. I normally can't see any error messages because I mostly open scopes from medm buttons, but here is one example of an error message:
```
131: RuntimeWarning: All-NaN slice encountered
b = ...I have been having a lot of ndscope crashes. I normally can't see any error messages because I mostly open scopes from medm buttons, but here is one example of an error message:
```
131: RuntimeWarning: All-NaN slice encountered
b = (np.nanmin(d), np.nanmax(d))
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/ndscope/data.py", line 573, in remote_recv
self.db[trend].append(dbd)
File "/usr/lib/python3/dist-packages/ndscope/data.py", line 244, in append
self.buffers[chan].append(buf)
File "/usr/lib/python3/dist-packages/ndscope/data.py", line 156, in append
assert buf.gps_start == self.gps_end, "append buffer start {} does not equal end {}".format(buf.gps_start, self.gps_end)
AssertionError: append buffer start 1300718848.0 does not equal end 1300718285.0
[1]+ Aborted ndscope omc_ASC_signals.yml
```ndscope 0.16https://git.ligo.org/cds/software/ndscope/-/issues/241Runtime warnings when running ndscope on Debian112024-01-27T00:19:06ZDavid BarkerRuntime warnings when running ndscope on Debian11During testing of ndscope on Debian 11 workstations, I get the following warning:
```
qt.qpa.xcb: X server does not support XInput 2
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 169, resource id: 149, major code: 130 ...During testing of ndscope on Debian 11 workstations, I get the following warning:
```
qt.qpa.xcb: X server does not support XInput 2
qt.qpa.xcb: QXcbConnection: XCB error: 1 (BadRequest), sequence: 169, resource id: 149, major code: 130 (Unknown), minor code: 47
```
This is just a console warning, ndscope runs correctlyhttps://git.ligo.org/cds/software/ndscope/-/issues/281Scroll wheel for axis limit changes not working for individual axes (only ins...2024-01-26T20:10:01ZJenne DriggersScroll wheel for axis limit changes not working for individual axes (only inside the plot box both at same time)I have noticed this on several computers running the new Debian 11. I open an ndscope template, and hover over the x-axis and roll the scroll wheel on the mouse, and the xlims do not change. I haven't explored fully, but it also seems ...I have noticed this on several computers running the new Debian 11. I open an ndscope template, and hover over the x-axis and roll the scroll wheel on the mouse, and the xlims do not change. I haven't explored fully, but it also seems like this may be a problem that depends on how many plots are on the 'scope, and is sometimes only a problem for the bottom plot. Anyhow, somehow the limit changing isn't working on Debian 11 the way it used to with Debian 10.https://git.ligo.org/cds/software/ndscope/-/issues/302right click reset t0 option doesn't quite work2024-01-26T20:01:53ZAnamaria Efflerright click reset t0 option doesn't quite workThe older version of ndscope (still running on some machines at L1) had a button that reset t0 to middle of current graph. The new reset t0 is from the right click menu and it does change the t0, but not in predictable ways, often way of...The older version of ndscope (still running on some machines at L1) had a button that reset t0 to middle of current graph. The new reset t0 is from the right click menu and it does change the t0, but not in predictable ways, often way off (sometimes not even within the current plot).