cubevis 0.5.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cubevis/LICENSE.rst +500 -0
- cubevis/__icons__/20px/fast-backward.svg +13 -0
- cubevis/__icons__/20px/fast-forward.svg +13 -0
- cubevis/__icons__/20px/step-backward.svg +12 -0
- cubevis/__icons__/20px/step-forward.svg +12 -0
- cubevis/__icons__/add-chan.png +0 -0
- cubevis/__icons__/add-chan.svg +84 -0
- cubevis/__icons__/add-cube.png +0 -0
- cubevis/__icons__/add-cube.svg +186 -0
- cubevis/__icons__/drag.png +0 -0
- cubevis/__icons__/drag.svg +109 -0
- cubevis/__icons__/mask-selected.png +0 -0
- cubevis/__icons__/mask.png +0 -0
- cubevis/__icons__/mask.svg +1 -0
- cubevis/__icons__/new-layer-sm-selected.png +0 -0
- cubevis/__icons__/new-layer-sm-selected.svg +88 -0
- cubevis/__icons__/new-layer-sm.png +0 -0
- cubevis/__icons__/new-layer-sm.svg +15 -0
- cubevis/__icons__/reset.png +0 -0
- cubevis/__icons__/reset.svg +11 -0
- cubevis/__icons__/sub-chan.png +0 -0
- cubevis/__icons__/sub-chan.svg +71 -0
- cubevis/__icons__/sub-cube.png +0 -0
- cubevis/__icons__/sub-cube.svg +95 -0
- cubevis/__icons__/zoom-to-fit.png +0 -0
- cubevis/__icons__/zoom-to-fit.svg +21 -0
- cubevis/__init__.py +58 -0
- cubevis/__js__/bokeh-3.6.1.min.js +728 -0
- cubevis/__js__/bokeh-tables-3.6.1.min.js +119 -0
- cubevis/__js__/bokeh-widgets-3.6.1.min.js +141 -0
- cubevis/__js__/casalib.min.js +1 -0
- cubevis/__js__/cubevisjs.min.js +62 -0
- cubevis/__version__.py +1 -0
- cubevis/apps/__init__.py +44 -0
- cubevis/apps/_createmask.py +461 -0
- cubevis/apps/_createregion.py +513 -0
- cubevis/apps/_interactiveclean.py +3260 -0
- cubevis/apps/_interactiveclean_wrappers.py +130 -0
- cubevis/apps/_ms_raster.py +815 -0
- cubevis/apps/_plotants.py +286 -0
- cubevis/apps/_plotbandpass.py +7 -0
- cubevis/bokeh/__init__.py +29 -0
- cubevis/bokeh/annotations/__init__.py +1 -0
- cubevis/bokeh/annotations/_ev_poly_annotation.py +6 -0
- cubevis/bokeh/components/__init__.py +28 -0
- cubevis/bokeh/format/__init__.py +31 -0
- cubevis/bokeh/format/_time_ticks.py +44 -0
- cubevis/bokeh/format/_wcs_ticks.py +45 -0
- cubevis/bokeh/models/__init__.py +4 -0
- cubevis/bokeh/models/_edit_span.py +7 -0
- cubevis/bokeh/models/_ev_text_input.py +6 -0
- cubevis/bokeh/models/_tip.py +37 -0
- cubevis/bokeh/models/_tip_button.py +50 -0
- cubevis/bokeh/sources/__init__.py +35 -0
- cubevis/bokeh/sources/_data_pipe.py +258 -0
- cubevis/bokeh/sources/_image_data_source.py +83 -0
- cubevis/bokeh/sources/_image_pipe.py +581 -0
- cubevis/bokeh/sources/_spectra_data_source.py +55 -0
- cubevis/bokeh/sources/_updatable_data_source.py +189 -0
- cubevis/bokeh/state/__init__.py +34 -0
- cubevis/bokeh/state/_initialize.py +164 -0
- cubevis/bokeh/state/_javascript.py +53 -0
- cubevis/bokeh/state/_palette.py +58 -0
- cubevis/bokeh/state/_session.py +44 -0
- cubevis/bokeh/state/js/bokeh-2.4.1.min.js +596 -0
- cubevis/bokeh/state/js/bokeh-gl-2.4.1.min.js +74 -0
- cubevis/bokeh/state/js/bokeh-tables-2.4.1.min.js +132 -0
- cubevis/bokeh/state/js/bokeh-widgets-2.4.1.min.js +118 -0
- cubevis/bokeh/state/js/casaguijs-v0.0.4.0-b2.4.min.js +49 -0
- cubevis/bokeh/state/js/casaguijs-v0.0.5.0-b2.4.min.js +49 -0
- cubevis/bokeh/state/js/casaguijs-v0.0.6.0-b2.4.min.js +49 -0
- cubevis/bokeh/state/js/casalib-v0.0.1.min.js +1 -0
- cubevis/bokeh/tools/__init__.py +31 -0
- cubevis/bokeh/tools/_cbreset_tool.py +52 -0
- cubevis/bokeh/tools/_drag_tool.py +61 -0
- cubevis/bokeh/utils/__init__.py +35 -0
- cubevis/bokeh/utils/_axes_labels.py +94 -0
- cubevis/bokeh/utils/_svg_icon.py +136 -0
- cubevis/data/__init__.py +1 -0
- cubevis/data/casaimage/__init__.py +114 -0
- cubevis/data/measurement_set/__init__.py +7 -0
- cubevis/data/measurement_set/_ms_data.py +178 -0
- cubevis/data/measurement_set/processing_set/__init__.py +30 -0
- cubevis/data/measurement_set/processing_set/_ps_concat.py +98 -0
- cubevis/data/measurement_set/processing_set/_ps_coords.py +78 -0
- cubevis/data/measurement_set/processing_set/_ps_data.py +213 -0
- cubevis/data/measurement_set/processing_set/_ps_io.py +55 -0
- cubevis/data/measurement_set/processing_set/_ps_raster_data.py +154 -0
- cubevis/data/measurement_set/processing_set/_ps_select.py +91 -0
- cubevis/data/measurement_set/processing_set/_ps_stats.py +218 -0
- cubevis/data/measurement_set/processing_set/_xds_data.py +149 -0
- cubevis/plot/__init__.py +1 -0
- cubevis/plot/ms_plot/__init__.py +29 -0
- cubevis/plot/ms_plot/_ms_plot.py +242 -0
- cubevis/plot/ms_plot/_ms_plot_constants.py +22 -0
- cubevis/plot/ms_plot/_ms_plot_selectors.py +348 -0
- cubevis/plot/ms_plot/_raster_plot.py +292 -0
- cubevis/plot/ms_plot/_raster_plot_inputs.py +116 -0
- cubevis/plot/ms_plot/_xds_plot_axes.py +110 -0
- cubevis/private/__java__/xml-casa-assembly-1.86.jar +0 -0
- cubevis/private/_gclean.py +798 -0
- cubevis/private/casashell/createmask.py +332 -0
- cubevis/private/casashell/iclean.py +4432 -0
- cubevis/private/casatasks/__init__.py +140 -0
- cubevis/private/casatasks/createmask.py +86 -0
- cubevis/private/casatasks/createregion.py +83 -0
- cubevis/private/casatasks/iclean.py +1831 -0
- cubevis/readme.rst +16 -0
- cubevis/remote/__init__.py +10 -0
- cubevis/remote/_gclean.py +61 -0
- cubevis/remote/_local.py +287 -0
- cubevis/remote/_remote_kernel.py +80 -0
- cubevis/toolbox/__init__.py +32 -0
- cubevis/toolbox/_app_context.py +74 -0
- cubevis/toolbox/_cube.py +3457 -0
- cubevis/toolbox/_region_list.py +197 -0
- cubevis/utils/_ResourceManager.py +86 -0
- cubevis/utils/__init__.py +620 -0
- cubevis/utils/_contextmgrchain.py +84 -0
- cubevis/utils/_conversion.py +93 -0
- cubevis/utils/_copydoc.py +55 -0
- cubevis/utils/_docenum.py +25 -0
- cubevis/utils/_import_protected_module.py +35 -0
- cubevis/utils/_logging.py +85 -0
- cubevis/utils/_pkgs.py +77 -0
- cubevis/utils/_regions.py +40 -0
- cubevis/utils/_static.py +66 -0
- cubevis/utils/_tiles.py +167 -0
- cubevis-0.5.2.dist-info/METADATA +151 -0
- cubevis-0.5.2.dist-info/RECORD +132 -0
- cubevis-0.5.2.dist-info/WHEEL +4 -0
- cubevis-0.5.2.dist-info/licenses/LICENSE +504 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
from bokeh.models import TextInput, Checkbox
|
|
2
|
+
from ..utils import static_vars
|
|
3
|
+
|
|
4
|
+
###
|
|
5
|
+
### These wrappers allow the creation of a SINGLE GUI element that is shared across multiple
|
|
6
|
+
### tabs or panels.
|
|
7
|
+
###
|
|
8
|
+
### THESE FUNCTIONS MAY BE CALLED WITH NO ARGUMENTS TO RETRIEVE THE SINGLE SHARED WIDGET
|
|
9
|
+
###
|
|
10
|
+
|
|
11
|
+
###
|
|
12
|
+
### Functions for creating GUI element providing the tclean iteration parameters...
|
|
13
|
+
###
|
|
14
|
+
class SharedWidgets:
|
|
15
|
+
def __init__( self ):
|
|
16
|
+
self._nmajor = None
|
|
17
|
+
self._niter = None
|
|
18
|
+
self._cycleniter = None
|
|
19
|
+
self._threshold = None
|
|
20
|
+
self._cyclefactor = None
|
|
21
|
+
self._gain = None
|
|
22
|
+
self._nsigma = None
|
|
23
|
+
self._noisethreshold = None
|
|
24
|
+
self._sidelobethreshold = None
|
|
25
|
+
self._lownoisethreshold = None
|
|
26
|
+
self._minbeamfrac = None
|
|
27
|
+
self._negativethreshold = None
|
|
28
|
+
self._dogrowprune = None
|
|
29
|
+
self._fastnoise = None
|
|
30
|
+
|
|
31
|
+
def nmajor( self, *args, **kwargs ):
|
|
32
|
+
if self._nmajor is None:
|
|
33
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
34
|
+
raise RuntimeError('No widget is available...')
|
|
35
|
+
self._nmajor = TextInput( *args, **kwargs )
|
|
36
|
+
return self._nmajor
|
|
37
|
+
|
|
38
|
+
def niter( self, *args, **kwargs ):
|
|
39
|
+
if self._niter is None:
|
|
40
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
41
|
+
raise RuntimeError('No widget is available...')
|
|
42
|
+
self._niter = TextInput( *args, **kwargs )
|
|
43
|
+
return self._niter
|
|
44
|
+
|
|
45
|
+
def cycleniter( self, *args, **kwargs ):
|
|
46
|
+
if self._cycleniter is None:
|
|
47
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
48
|
+
raise RuntimeError('No widget is available...')
|
|
49
|
+
self._cycleniter = TextInput( *args, **kwargs )
|
|
50
|
+
return self._cycleniter
|
|
51
|
+
|
|
52
|
+
def threshold( self, *args, **kwargs ):
|
|
53
|
+
if self._threshold is None:
|
|
54
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
55
|
+
raise RuntimeError('No widget is available...')
|
|
56
|
+
self._threshold = TextInput( *args, **kwargs )
|
|
57
|
+
return self._threshold
|
|
58
|
+
|
|
59
|
+
def cyclefactor( self, *args, **kwargs ):
|
|
60
|
+
if self._cyclefactor is None:
|
|
61
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
62
|
+
raise RuntimeError('No widget is available...')
|
|
63
|
+
self._cyclefactor = TextInput( *args, **kwargs )
|
|
64
|
+
return self._cyclefactor
|
|
65
|
+
|
|
66
|
+
def gain( self, *args, **kwargs ):
|
|
67
|
+
if self._gain is None:
|
|
68
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
69
|
+
raise RuntimeError('No widget is available...')
|
|
70
|
+
self._gain = TextInput( *args, **kwargs )
|
|
71
|
+
return self._gain
|
|
72
|
+
|
|
73
|
+
def nsigma( self, *args, **kwargs ):
|
|
74
|
+
if self._nsigma is None:
|
|
75
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
76
|
+
raise RuntimeError('No widget is available...')
|
|
77
|
+
self._nsigma = TextInput( *args, **kwargs )
|
|
78
|
+
return self._nsigma
|
|
79
|
+
|
|
80
|
+
###
|
|
81
|
+
### Wrappers providing GUI for auto-masking parameters...
|
|
82
|
+
###
|
|
83
|
+
def noisethreshold( self, *args, **kwargs ):
|
|
84
|
+
if self._noisethreshold is None:
|
|
85
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
86
|
+
raise RuntimeError('No widget is available...')
|
|
87
|
+
self._noisethreshold = TextInput( *args, **kwargs )
|
|
88
|
+
return self._noisethreshold
|
|
89
|
+
|
|
90
|
+
def sidelobethreshold( self, *args, **kwargs ):
|
|
91
|
+
if self._sidelobethreshold is None:
|
|
92
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
93
|
+
raise RuntimeError('No widget is available...')
|
|
94
|
+
self._sidelobethreshold = TextInput( *args, **kwargs )
|
|
95
|
+
return self._sidelobethreshold
|
|
96
|
+
|
|
97
|
+
def lownoisethreshold( self, *args, **kwargs ):
|
|
98
|
+
if self._lownoisethreshold is None:
|
|
99
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
100
|
+
raise RuntimeError('No widget is available...')
|
|
101
|
+
self._lownoisethreshold = TextInput( *args, **kwargs )
|
|
102
|
+
return self._lownoisethreshold
|
|
103
|
+
|
|
104
|
+
def minbeamfrac( self, *args, **kwargs ):
|
|
105
|
+
if self._minbeamfrac is None:
|
|
106
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
107
|
+
raise RuntimeError('No widget is available...')
|
|
108
|
+
self._minbeamfrac = TextInput( *args, **kwargs )
|
|
109
|
+
return self._minbeamfrac
|
|
110
|
+
|
|
111
|
+
def negativethreshold( self, *args, **kwargs ):
|
|
112
|
+
if self._negativethreshold is None:
|
|
113
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
114
|
+
raise RuntimeError('No widget is available...')
|
|
115
|
+
self._negativethreshold = TextInput( *args, **kwargs )
|
|
116
|
+
return self._negativethreshold
|
|
117
|
+
|
|
118
|
+
def dogrowprune( self, *args, **kwargs ):
|
|
119
|
+
if self._dogrowprune is None:
|
|
120
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
121
|
+
raise RuntimeError('No widget is available...')
|
|
122
|
+
self._dogrowprune = Checkbox( *args, **kwargs )
|
|
123
|
+
return self._dogrowprune
|
|
124
|
+
|
|
125
|
+
def fastnoise( self, *args, **kwargs ):
|
|
126
|
+
if self._fastnoise is None:
|
|
127
|
+
if len(args) == 0 and len(kwargs) == 0:
|
|
128
|
+
raise RuntimeError('No widget is available...')
|
|
129
|
+
self._fastnoise = Checkbox( *args, **kwargs )
|
|
130
|
+
return self._fastnoise
|