error: TypeError: len() of unsized object when trying to plot -x FREQ -y amp -c SCAN_NUMBER with MeerKAT data
Closed this issue · 4 comments
Using the master branch shadems with the command: shadems msdir/1617605022_sdp_l0-cal.ms -x FREQ -y amp -c SCAN_NUMBER --title 'freq_vs_amp_1617605022_s
I get the error:
dp_l0-cal.ms'
2022-11-17 22:37:35 - shadems - INFO - using colourmap colorcet.bkr
2022-11-17 22:37:35 - shadems - INFO - using colourmap cmasher.pride
2022-11-17 22:37:35 - shadems - INFO - using colourmap colorcet.glasbey_dark
2022-11-17 22:37:35 - shadems - INFO - /home/stanbury/shadems_venv/bin/shadems msdir/1617605022_sdp_l0-cal.ms -x FREQ -y amp -c SCAN_NUMBER --title freq_vs_am
p_1617605022_sdp_l0-cal.ms
2022-11-17 22:37:35 - shadems - INFO - ------------------------------------------------------
2022-11-17 22:37:35 - shadems - INFO - : MS msdir/1617605022_sdp_l0-cal.ms contains 1074528 rows
2022-11-17 22:37:35 - shadems - INFO - : (1, 4096) spectral windows and channels
2022-11-17 22:37:35 - shadems - INFO - : 2 fields: J0408-6545 J0025-2602
2022-11-17 22:37:35 - shadems - INFO - : 16 scans: 1 2 4 5 7 9 10 12 14 16 18 19 21 23 25 26
2022-11-17 22:37:36 - shadems - INFO - : 63/63 antennas: 0:m000 1:m001 2:m002 3:m003 4:m004 5:m005 6:m006 7:m007 8:m008 9:m009 10:m010 11:m011 12:m012 13:m0
13 14:m014 15:m015 16:m016 17:m017 18:m018 19:m019 20:m020 21:m021 22:m022 23:m023 24:m024 25:m025 26:m026 27:m027 28:m028 29:m029 30:m030 31:m031 32:m032 33:
m033 34:m034 35:m035 36:m036 37:m037 38:m038 39:m039 40:m040 41:m041 42:m042 43:m043 44:m044 45:m045 46:m046 47:m047 48:m049 49:m050 50:m051 51:m052 52:m053 5
3:m054 54:m055 55:m056 56:m057 57:m058 58:m059 59:m060 60:m061 61:m062 62:m063
2022-11-17 22:37:36 - shadems - INFO - : 2016/2016 baselines present
2022-11-17 22:37:36 - shadems - INFO - : corrs/Stokes XX XY YX YY I Q U V
2022-11-17 22:37:36 - shadems - INFO - ------------------------------------------------------
2022-11-17 22:37:36 - shadems - INFO - : Data selected for plotting:
2022-11-17 22:37:36 - shadems - INFO - Antenna(s) : all
2022-11-17 22:37:36 - shadems - INFO - Baseline(s) : all except autocorrelations
2022-11-17 22:37:36 - shadems - INFO - Field(s) : all
2022-11-17 22:37:36 - shadems - INFO - SPW(s) : all
2022-11-17 22:37:36 - shadems - INFO - Scan(s) : all
2022-11-17 22:37:36 - shadems - INFO - Channels : all
2022-11-17 22:37:36 - shadems - INFO - Corr/Stokes : XX XY YX YY
2022-11-17 22:37:36 - shadems - INFO - ------------------------------------------------------
2022-11-17 22:37:36 - shadems - INFO - axis: FREQ, range (None, None), discretization None
2022-11-17 22:37:36 - shadems - INFO - axis: amp(DATA), corr None, range (None, None), discretization None
2022-11-17 22:37:36 - shadems - INFO - axis: _(SCAN_NUMBER), corr False, range (None, None), discretization 16
2022-11-17 22:37:36 - shadems - INFO - : you have asked for 1 plots employing 3 unique datums
2022-11-17 22:37:36 - shadems - INFO - : Indexing MS and building dataframes (1040949 rows, chunk size is 5000)
2022-11-17 22:37:37 - shadems - INFO - : complete
2022-11-17 22:37:37 - shadems - INFO - : rendering 1 dataframes with 1.71e+10 points into 1 plot types
2022-11-17 22:37:37 - shadems - INFO - : rendering plot-1617605022_sdp_l0-cal-DATA-XX-XY-YX-YY-amp-FREQ-SCAN_NUMBER.png
2022-11-17 22:37:37 - shadems - INFO - : scanning axis min/max for DATA_amp_None
Traceback (most recent call last):
File "/home/stanbury/shadems_venv/bin/shadems", line 8, in
main.main([a for a in sys.argv[1:]])
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/shade_ms/main.py", line 547, in main
render_single_plot(df, subset, xdatum, ydatum, adatum, ared, cdatum, pngname, title, xlabel, ylabel)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/shade_ms/main.py", line 488, in render_single_plot
result = data_plots.create_plot(df, subset, xdatum, ydatum, adatum, ared, cdatum,
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/shade_ms/data_plots.py", line 483, in create_plot
ax.imshow(X=rgb.data, extent=[xmin, xmax, ymin, ymax],
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/_api/deprecation.py", line 454, in wrapper
return func(*args, **kwargs)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/init.py", line 1423, in inner
return func(ax, *map(sanitize_sequence, args), **kwargs)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/axes/_axes.py", line 5614, in imshow
im.set_extent(im.get_extent())
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/image.py", line 979, in set_extent
self.axes.set_xlim((xmin, xmax), auto=None)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/_api/deprecation.py", line 454, in wrapper
return func(*args, **kwargs)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/axes/_base.py", line 3693, in set_xlim
return self.xaxis._set_lim(left, right, emit=emit, auto=auto)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/axis.py", line 1112, in _set_lim
v0 = self.axes._validate_converted_limits(v0, self.convert_units)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/axes/_base.py", line 3610, in _validate_converted_limits
converted_limit = convert(limit)
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/axis.py", line 1656, in convert_units
if munits._is_natively_supported(x):
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/matplotlib/units.py", line 64, in _is_natively_supported
for thisx in x:
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/dask/array/core.py", line 1694, in iter
for i in range(len(self)):
File "/home/stanbury/shadems_venv/lib/python3.8/site-packages/dask/array/core.py", line 1558, in len
raise TypeError("len() of unsized object")
TypeError: len() of unsized object
I had this same issue and is now solved with the deps-update
branch. Please check on your side if this is also the case?
I had this same issue and is now solved with the
deps-update
branch. Please check on your side if this is also the case?
I tried this and I am still getting the same error!
Updates are now in the latest pypi release version 5.2
.
Please try pip install shadems -U
Updates are now in the latest pypi release version
5.2
. Please trypip install shadems -U
Works! Thank you!