From tabular data to binned data#

Overview#

Binned data in scipp is conceptually equivalent to an array of tables. In other words, it represents an array of records (table rows) sorted into an (often multi-dimensional) array of “bins”. In this tutorial we begin by learning how to setup tabular data appropriate for histogramming and binning with scipp. The main focus will then be binning the tabular data and basic usage of the resulting binned data.

We will use a file of a simulated neutron-scattering experiment — at the powder diffractometer DREAM at the European Spallation Source. The approach and techniques displayed here are however applicable far more generally and not specific to this scientific area.

Loading tabular data#

We will use a file created by a simulation for a diamond sample using McStas and Geant4. We can use pandas.read_table to load the table as a pandas.Dataframe. pandas.read_table is much faster than numpy.loadtxt and also slightly more convenient:

[1]:
import pandas as pd

filename = 'https://public.esss.dk/groups/scipp/scipp/1/data_dream_diamond.zip'
df = pd.read_table(filename)
df
[1]:
tof [ns] wavelength [Angstrom] module segment counter wire strip x_pos [mm] y_pos [mm] z_pos [mm] voxel_x [mm] voxel_y [mm] voxel_z [mm]
0 73035529 3.69426 12 6 2 22 20 956.990 -922.167 -1045.120 963.085 -920.410 -1049.580
1 72964368 3.70232 4 5 1 4 20 1106.620 255.398 -892.764 1103.670 248.977 -889.281
2 73056111 3.69120 14 5 2 27 20 703.154 -1204.100 -1102.690 704.337 -1196.640 -1094.100
3 73056111 3.69118 14 5 2 27 19 702.934 -1202.910 -1104.840 704.337 -1196.640 -1107.980
4 73024979 3.69372 10 1 1 21 19 1080.410 -766.272 -1051.010 1075.960 -768.968 -1053.870
... ... ... ... ... ... ... ... ... ... ... ... ... ...
999994 54289512 2.75436 2 5 2 31 154 1244.490 718.196 228.159 1239.600 720.253 226.852
999995 54250975 2.75877 10 2 1 15 153 1033.120 -722.267 192.328 1030.990 -715.544 190.343
999996 54261718 2.75799 14 2 2 19 154 569.039 -1165.440 201.670 573.491 -1164.860 205.394
999997 54261718 2.75797 14 2 2 19 153 572.311 -1164.580 200.893 573.491 -1164.860 197.211
999998 54254907 2.75829 13 3 2 17 153 726.378 -1053.590 193.689 727.408 -1048.180 193.777

999999 rows × 13 columns

scipp.compat.from_pandas can convert the pandas.Dataframe to a scipp.Dataset. The column names encode the physical units so we must extract them manually:

[2]:
import scipp as sc

ds = sc.compat.from_pandas(df)
del ds.coords['row']  # we have no use for this row index
for key in list(ds):
    name, *remainder = key.split(' ')
    ds[name] = ds.pop(key)
    ds[name].unit = remainder[0][1:-1] if remainder else None
sc.table(ds[:10])

This 1-D dataset represents the tabular data that was read from the file. In the above table, each row (record) describes an event, in this case the detection of a neutron, with its associated metadata such as the detector module or the x, y, and z position.

To histogram or bin data by a column, scipp must know which columns are metadata and which column holds data values. The table is actually a table of metadata values for events with an implicit data value of “1 count” each. To continue we convert this into a data array:

[3]:
table = sc.DataArray(sc.ones(sizes=ds.sizes, unit='counts'))
for name in ds:
    table.coords[name] = ds[name].data
table
[3]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (106.81 MB)
    • row: 999999
    • counter
      (row)
      int64
      2, 1, ..., 2, 2
      Values:
      array([2, 1, 2, ..., 2, 2, 2])
    • module
      (row)
      int64
      12, 4, ..., 14, 13
      Values:
      array([12, 4, 14, ..., 14, 14, 13])
    • segment
      (row)
      int64
      6, 5, ..., 2, 3
      Values:
      array([6, 5, 5, ..., 2, 2, 3])
    • strip
      (row)
      int64
      20, 20, ..., 153, 153
      Values:
      array([ 20, 20, 20, ..., 154, 153, 153])
    • tof
      (row)
      int64
      ns
      73035529, 72964368, ..., 54261718, 54254907
      Values:
      array([73035529, 72964368, 73056111, ..., 54261718, 54261718, 54254907])
    • voxel_x
      (row)
      float64
      mm
      963.085, 1103.670, ..., 573.491, 727.408
      Values:
      array([ 963.085, 1103.67 , 704.337, ..., 573.491, 573.491, 727.408])
    • voxel_y
      (row)
      float64
      mm
      -920.410, 248.977, ..., -1164.860, -1048.180
      Values:
      array([ -920.41 , 248.977, -1196.64 , ..., -1164.86 , -1164.86 , -1048.18 ])
    • voxel_z
      (row)
      float64
      mm
      -1049.580, -889.281, ..., 197.211, 193.777
      Values:
      array([-1049.58 , -889.281, -1094.1 , ..., 205.394, 197.211, 193.777])
    • wavelength
      (row)
      float64
      Å
      3.694, 3.702, ..., 2.758, 2.758
      Values:
      array([3.69426, 3.70232, 3.6912 , ..., 2.75799, 2.75797, 2.75829])
    • wire
      (row)
      int64
      22, 4, ..., 19, 17
      Values:
      array([22, 4, 27, ..., 19, 19, 17])
    • x_pos
      (row)
      float64
      mm
      956.990, 1106.620, ..., 572.311, 726.378
      Values:
      array([ 956.99 , 1106.62 , 703.154, ..., 569.039, 572.311, 726.378])
    • y_pos
      (row)
      float64
      mm
      -922.167, 255.398, ..., -1164.580, -1053.590
      Values:
      array([ -922.167, 255.398, -1204.1 , ..., -1165.44 , -1164.58 , -1053.59 ])
    • z_pos
      (row)
      float64
      mm
      -1045.120, -892.764, ..., 200.893, 193.689
      Values:
      array([-1045.12 , -892.764, -1102.69 , ..., 201.67 , 200.893, 193.689])
    • (row)
      float64
      counts
      1.0, 1.0, ..., 1.0, 1.0
      Values:
      array([1., 1., 1., ..., 1., 1., 1.])

Histogramming and binning#

We are now ready to bin or histogram our data. Scipp uses the following terminology:

  • Binning preserves the original data records as a table associated with each bin.

  • Histogramming adds up the values from all contributing records into a single value per bin.

In both cases we need to define bin edges. As an initial 1-D example, we will compute a wavelength histogram, so we create a variable of wavelength edges:

[4]:
wavelength = sc.linspace(
    'wavelength',
    table.coords['wavelength'].min(),
    table.coords['wavelength'].max(),
    num=1001,
)

The table can now be histogrammed using sc.histogram:

[5]:
histogrammed = sc.histogram(table, bins=wavelength)
histogrammed
[5]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (15.63 KB)
    • wavelength: 1000
    • wavelength
      (wavelength [bin-edge])
      float64
      Å
      0.566, 0.570, ..., 4.070, 4.073
      Values:
      array([0.566368 , 0.56987505, 0.5733821 , ..., 4.0664059 , 4.06991295, 4.07342 ])
    • (wavelength)
      float64
      counts
      8.0, 4.0, ..., 1.0, 1.0
      Values:
      array([8.000e+00, 4.000e+00, 1.200e+01, 1.800e+01, 1.700e+01, 8.000e+00, 4.100e+01, 1.900e+01, 3.500e+01, 4.100e+01, 4.300e+01, 5.500e+01, 7.300e+01, 6.900e+01, 7.800e+01, 7.700e+01, 7.400e+01, 7.900e+01, 8.700e+01, 1.020e+02, 6.800e+01, 8.800e+01, 7.700e+01, 8.000e+01, 7.400e+01, 6.500e+01, 9.600e+01, 1.410e+02, 1.460e+02, 1.330e+02, 1.710e+02, 1.650e+02, 1.360e+02, 2.060e+02, 1.490e+02, 1.830e+02, 1.410e+02, 1.540e+02, 1.190e+02, 1.450e+02, 1.570e+02, 2.160e+02, 2.070e+02, 1.360e+02, 1.170e+02, 2.070e+02, 2.420e+02, 1.730e+02, 1.710e+02, 1.750e+02, 1.990e+02, 2.070e+02, 1.810e+02, 1.900e+02, 2.550e+02, 2.450e+02, 2.380e+02, 2.440e+02, 2.000e+02, 2.420e+02, 2.200e+02, 2.970e+02, 2.280e+02, 2.670e+02, 2.450e+02, 2.020e+02, 2.150e+02, 2.820e+02, 3.170e+02, 2.340e+02, 2.540e+02, 2.920e+02, 2.510e+02, 3.290e+02, 3.420e+02, 2.800e+02, 3.090e+02, 3.420e+02, 2.890e+02, 3.290e+02, 2.970e+02, 2.680e+02, 3.600e+02, 3.310e+02, 3.540e+02, 2.950e+02, 2.220e+02, 3.250e+02, 3.210e+02, 2.960e+02, 4.300e+02, 3.810e+02, 3.560e+02, 4.240e+02, 4.040e+02, 4.060e+02, 3.600e+02, 4.260e+02, 3.260e+02, 3.090e+02, 4.400e+02, 3.120e+02, 3.800e+02, 4.850e+02, 3.680e+02, 5.250e+02, 4.310e+02, 4.870e+02, 4.380e+02, 3.770e+02, 3.740e+02, 4.640e+02, 5.320e+02, 5.290e+02, 5.400e+02, 3.860e+02, 4.110e+02, 3.900e+02, 4.190e+02, 4.710e+02, 4.070e+02, 5.540e+02, 5.670e+02, 5.200e+02, 5.470e+02, 5.990e+02, 4.870e+02, 5.210e+02, 4.620e+02, 6.190e+02, 5.700e+02, 5.050e+02, 4.630e+02, 5.760e+02, 5.960e+02, 5.390e+02, 5.560e+02, 4.750e+02, 4.860e+02, 5.340e+02, 4.810e+02, 5.190e+02, 6.300e+02, 5.600e+02, 4.700e+02, 4.190e+02, 4.660e+02, 4.120e+02, 5.380e+02, 5.490e+02, 4.700e+02, 3.410e+02, 3.850e+02, 4.530e+02, 4.140e+02, 3.320e+02, 4.490e+02, 4.390e+02, 5.150e+02, 5.200e+02, 4.990e+02, 4.990e+02, 4.240e+02, 3.870e+02, 4.090e+02, 4.680e+02, 4.860e+02, 4.740e+02, 4.650e+02, 4.280e+02, 5.330e+02, 5.110e+02, 4.930e+02, 5.210e+02, 5.150e+02, 5.690e+02, 5.550e+02, 6.590e+02, 6.340e+02, 4.750e+02, 5.630e+02, 4.040e+02, 4.010e+02, 4.510e+02, 5.880e+02, 6.050e+02, 5.850e+02, 5.670e+02, 6.900e+02, 6.080e+02, 7.190e+02, 5.590e+02, 5.200e+02, 4.710e+02, 5.510e+02, 5.560e+02, 7.490e+02, 6.130e+02, 4.910e+02, 4.630e+02, 4.700e+02, 5.160e+02, 5.740e+02, 6.640e+02, 7.030e+02, 6.010e+02, 6.070e+02, 6.630e+02, 6.090e+02, 6.260e+02, 6.960e+02, 6.510e+02, 5.940e+02, 5.640e+02, 5.620e+02, 6.550e+02, 6.850e+02, 6.840e+02, 6.870e+02, 6.480e+02, 4.920e+02, 3.700e+02, 5.120e+02, 4.690e+02, 4.570e+02, 3.930e+02, 4.230e+02, 4.720e+02, 4.600e+02, 4.420e+02, 4.640e+02, 4.620e+02, 4.920e+02, 5.310e+02, 4.580e+02, 4.830e+02, 5.100e+02, 4.910e+02, 5.030e+02, 4.740e+02, 3.810e+02, 4.240e+02, 4.440e+02, 5.700e+02, 5.110e+02, 5.880e+02, 5.820e+02, 5.590e+02, 6.560e+02, 6.130e+02, 7.640e+02, 6.590e+02, 6.340e+02, 6.820e+02, 5.580e+02, 6.090e+02, 8.470e+02, 5.630e+02, 5.470e+02, 6.170e+02, 7.420e+02, 7.300e+02, 6.360e+02, 5.770e+02, 6.860e+02, 6.330e+02, 6.070e+02, 7.740e+02, 7.300e+02, 7.280e+02, 7.820e+02, 7.820e+02, 6.960e+02, 7.800e+02, 8.940e+02, 8.570e+02, 9.190e+02, 9.440e+02, 8.780e+02, 9.720e+02, 8.810e+02, 6.490e+02, 6.200e+02, 5.070e+02, 5.190e+02, 5.830e+02, 5.420e+02, 5.320e+02, 5.240e+02, 4.530e+02, 5.670e+02, 6.140e+02, 7.440e+02, 6.350e+02, 6.720e+02, 7.800e+02, 7.310e+02, 6.940e+02, 8.300e+02, 9.680e+02, 8.510e+02, 8.640e+02, 7.920e+02, 8.140e+02, 8.620e+02, 7.940e+02, 9.510e+02, 9.170e+02, 8.600e+02, 8.360e+02, 7.970e+02, 7.960e+02, 8.140e+02, 8.770e+02, 9.520e+02, 1.012e+03, 9.580e+02, 9.570e+02, 7.560e+02, 7.850e+02, 8.070e+02, 7.480e+02, 7.510e+02, 9.050e+02, 8.470e+02, 6.960e+02, 7.310e+02, 7.290e+02, 7.080e+02, 8.230e+02, 7.840e+02, 7.640e+02, 7.610e+02, 6.850e+02, 6.590e+02, 7.800e+02, 8.750e+02, 8.500e+02, 8.840e+02, 8.730e+02, 8.780e+02, 9.050e+02, 7.600e+02, 8.150e+02, 8.010e+02, 7.680e+02, 7.920e+02, 7.900e+02, 7.960e+02, 8.530e+02, 8.440e+02, 8.830e+02, 9.350e+02, 1.107e+03, 1.079e+03, 1.176e+03, 1.026e+03, 8.820e+02, 9.560e+02, 1.037e+03, 1.082e+03, 1.089e+03, 1.008e+03, 9.940e+02, 9.110e+02, 9.230e+02, 1.079e+03, 1.106e+03, 1.114e+03, 1.050e+03, 1.041e+03, 1.101e+03, 1.032e+03, 1.042e+03, 1.210e+03, 1.142e+03, 1.035e+03, 1.140e+03, 1.195e+03, 1.169e+03, 1.178e+03, 9.940e+02, 9.300e+02, 8.510e+02, 7.580e+02, 9.380e+02, 8.460e+02, 7.100e+02, 6.440e+02, 6.150e+02, 7.610e+02, 6.340e+02, 6.380e+02, 7.470e+02, 6.310e+02, 7.100e+02, 7.710e+02, 7.790e+02, 7.920e+02, 7.790e+02, 9.520e+02, 9.750e+02, 8.370e+02, 7.370e+02, 6.310e+02, 4.900e+02, 3.070e+02, 4.060e+02, 3.660e+02, 3.650e+02, 3.590e+02, 3.950e+02, 3.900e+02, 4.390e+02, 3.960e+02, 3.480e+02, 3.010e+02, 3.140e+02, 3.050e+02, 3.130e+02, 3.930e+02, 4.020e+02, 3.470e+02, 3.670e+02, 3.250e+02, 4.160e+02, 5.200e+02, 4.890e+02, 6.120e+02, 6.240e+02, 4.740e+02, 4.710e+02, 5.530e+02, 5.510e+02, 4.590e+02, 5.010e+02, 5.070e+02, 5.240e+02, 5.650e+02, 4.990e+02, 5.560e+02, 5.240e+02, 5.120e+02, 6.800e+02, 6.070e+02, 5.220e+02, 5.460e+02, 6.850e+02, 6.340e+02, 7.170e+02, 8.080e+02, 8.300e+02, 8.420e+02, 8.610e+02, 9.450e+02, 8.350e+02, 9.140e+02, 8.830e+02, 8.430e+02, 8.680e+02, 9.100e+02, 8.830e+02, 8.180e+02, 8.120e+02, 8.130e+02, 7.670e+02, 8.810e+02, 7.420e+02, 8.890e+02, 7.790e+02, 8.620e+02, 8.000e+02, 7.890e+02, 8.660e+02, 7.870e+02, 7.400e+02, 7.260e+02, 7.780e+02, 8.050e+02, 8.160e+02, 7.550e+02, 8.160e+02, 7.760e+02, 8.670e+02, 8.320e+02, 9.110e+02, 9.020e+02, 8.330e+02, 6.500e+02, 5.900e+02, 7.360e+02, 7.680e+02, 8.760e+02, 8.460e+02, 8.920e+02, 8.660e+02, 7.270e+02, 7.240e+02, 7.620e+02, 7.080e+02, 6.870e+02, 8.140e+02, 7.990e+02, 8.690e+02, 7.450e+02, 8.200e+02, 6.570e+02, 6.090e+02, 7.170e+02, 8.100e+02, 8.070e+02, 7.430e+02, 6.770e+02, 7.160e+02, 7.420e+02, 7.170e+02, 6.890e+02, 6.290e+02, 7.490e+02, 7.710e+02, 7.400e+02, 7.450e+02, 7.050e+02, 8.160e+02, 8.010e+02, 7.630e+02, 8.630e+02, 7.330e+02, 8.720e+02, 6.970e+02, 7.720e+02, 8.830e+02, 9.250e+02, 7.810e+02, 8.510e+02, 7.500e+02, 8.770e+02, 8.040e+02, 8.360e+02, 8.360e+02, 7.340e+02, 6.580e+02, 7.320e+02, 8.940e+02, 8.590e+02, 9.340e+02, 8.500e+02, 8.560e+02, 8.260e+02, 7.570e+02, 6.720e+02, 7.830e+02, 8.240e+02, 7.020e+02, 8.000e+02, 7.390e+02, 7.060e+02, 8.000e+02, 8.840e+02, 8.780e+02, 7.430e+02, 7.020e+02, 8.720e+02, 9.310e+02, 8.370e+02, 6.480e+02, 7.700e+02, 8.730e+02, 8.060e+02, 9.660e+02, 7.970e+02, 8.110e+02, 8.880e+02, 9.650e+02, 9.490e+02, 8.460e+02, 8.210e+02, 8.740e+02, 8.990e+02, 7.320e+02, 7.630e+02, 8.390e+02, 7.290e+02, 8.440e+02, 7.410e+02, 7.880e+02, 8.100e+02, 1.285e+03, 1.764e+03, 1.500e+03, 1.479e+03, 1.554e+03, 1.692e+03, 1.531e+03, 1.449e+03, 1.502e+03, 1.585e+03, 1.610e+03, 1.713e+03, 1.857e+03, 1.610e+03, 1.802e+03, 1.756e+03, 1.648e+03, 1.659e+03, 1.431e+03, 1.441e+03, 1.724e+03, 1.786e+03, 1.422e+03, 1.510e+03, 1.473e+03, 1.627e+03, 1.684e+03, 1.585e+03, 1.695e+03, 1.742e+03, 1.637e+03, 1.957e+03, 1.842e+03, 1.894e+03, 1.887e+03, 1.686e+03, 1.569e+03, 1.663e+03, 1.779e+03, 1.619e+03, 1.527e+03, 1.549e+03, 1.782e+03, 1.919e+03, 1.955e+03, 2.084e+03, 2.005e+03, 1.949e+03, 1.698e+03, 1.682e+03, 1.732e+03, 1.802e+03, 1.817e+03, 1.749e+03, 1.470e+03, 1.656e+03, 1.667e+03, 1.638e+03, 1.816e+03, 1.819e+03, 1.494e+03, 1.559e+03, 1.668e+03, 1.789e+03, 1.531e+03, 1.485e+03, 1.522e+03, 1.975e+03, 1.699e+03, 1.512e+03, 1.634e+03, 1.882e+03, 1.835e+03, 1.715e+03, 1.746e+03, 1.852e+03, 1.920e+03, 1.984e+03, 1.951e+03, 1.666e+03, 1.706e+03, 1.592e+03, 1.330e+03, 1.380e+03, 1.581e+03, 1.571e+03, 1.662e+03, 1.774e+03, 1.701e+03, 1.791e+03, 1.667e+03, 1.510e+03, 1.680e+03, 1.755e+03, 1.788e+03, 1.748e+03, 1.894e+03, 2.036e+03, 1.901e+03, 2.027e+03, 1.899e+03, 1.945e+03, 1.984e+03, 1.869e+03, 2.013e+03, 1.737e+03, 1.763e+03, 1.794e+03, 1.902e+03, 1.733e+03, 1.714e+03, 1.799e+03, 2.039e+03, 1.845e+03, 1.643e+03, 1.834e+03, 2.027e+03, 1.760e+03, 1.862e+03, 1.810e+03, 1.986e+03, 1.836e+03, 1.838e+03, 1.880e+03, 1.756e+03, 1.878e+03, 1.837e+03, 2.127e+03, 2.031e+03, 2.192e+03, 1.819e+03, 1.915e+03, 1.889e+03, 1.909e+03, 1.984e+03, 2.145e+03, 1.825e+03, 1.836e+03, 1.873e+03, 2.023e+03, 1.993e+03, 1.917e+03, 1.879e+03, 1.927e+03, 1.775e+03, 1.811e+03, 1.787e+03, 1.900e+03, 2.116e+03, 2.098e+03, 2.165e+03, 2.273e+03, 2.095e+03, 1.900e+03, 2.080e+03, 1.898e+03, 2.131e+03, 2.082e+03, 2.321e+03, 2.223e+03, 2.009e+03, 1.737e+03, 1.894e+03, 1.669e+03, 1.735e+03, 1.845e+03, 1.922e+03, 1.993e+03, 2.085e+03, 2.030e+03, 2.209e+03, 1.961e+03, 1.782e+03, 1.839e+03, 1.879e+03, 1.905e+03, 1.848e+03, 1.743e+03, 1.878e+03, 2.059e+03, 1.930e+03, 1.961e+03, 2.081e+03, 2.204e+03, 2.042e+03, 1.868e+03, 2.023e+03, 1.984e+03, 1.838e+03, 1.857e+03, 1.831e+03, 1.712e+03, 1.865e+03, 1.880e+03, 1.968e+03, 1.741e+03, 1.858e+03, 2.045e+03, 2.190e+03, 2.267e+03, 2.057e+03, 2.132e+03, 1.964e+03, 2.038e+03, 2.002e+03, 2.175e+03, 2.183e+03, 2.037e+03, 2.087e+03, 2.061e+03, 1.884e+03, 1.823e+03, 1.826e+03, 1.812e+03, 2.040e+03, 2.017e+03, 1.946e+03, 1.983e+03, 1.862e+03, 2.122e+03, 2.180e+03, 2.136e+03, 2.145e+03, 2.081e+03, 2.219e+03, 2.113e+03, 2.026e+03, 2.253e+03, 2.254e+03, 2.095e+03, 2.168e+03, 1.902e+03, 1.854e+03, 1.901e+03, 1.837e+03, 1.978e+03, 1.991e+03, 2.125e+03, 2.203e+03, 2.246e+03, 2.084e+03, 2.046e+03, 2.059e+03, 2.108e+03, 2.201e+03, 2.398e+03, 2.497e+03, 2.270e+03, 2.267e+03, 2.067e+03, 2.331e+03, 2.178e+03, 2.290e+03, 1.898e+03, 1.984e+03, 2.160e+03, 1.965e+03, 1.919e+03, 1.989e+03, 2.319e+03, 2.003e+03, 2.164e+03, 2.004e+03, 1.835e+03, 2.255e+03, 2.205e+03, 2.126e+03, 1.957e+03, 1.908e+03, 2.186e+03, 2.229e+03, 2.201e+03, 2.178e+03, 2.310e+03, 2.291e+03, 2.298e+03, 2.043e+03, 2.144e+03, 2.295e+03, 2.418e+03, 2.514e+03, 2.370e+03, 2.252e+03, 2.174e+03, 2.117e+03, 2.108e+03, 2.079e+03, 2.387e+03, 2.367e+03, 2.508e+03, 2.416e+03, 2.153e+03, 2.094e+03, 2.208e+03, 2.015e+03, 2.043e+03, 2.027e+03, 2.141e+03, 2.375e+03, 2.363e+03, 2.192e+03, 2.284e+03, 2.270e+03, 2.363e+03, 2.317e+03, 2.237e+03, 2.114e+03, 2.120e+03, 2.110e+03, 2.328e+03, 2.424e+03, 2.341e+03, 2.336e+03, 2.307e+03, 2.247e+03, 2.007e+03, 2.286e+03, 2.015e+03, 2.210e+03, 2.267e+03, 2.114e+03, 2.288e+03, 2.226e+03, 2.371e+03, 2.137e+03, 2.541e+03, 2.220e+03, 2.281e+03, 2.005e+03, 1.496e+03, 8.520e+02, 4.030e+02, 2.170e+02, 1.080e+02, 1.010e+02, 6.500e+01, 8.300e+01, 8.000e+01, 8.200e+01, 3.900e+01, 2.200e+01, 2.200e+01, 1.400e+01, 7.000e+00, 2.000e+01, 1.600e+01, 2.000e+01, 1.800e+01, 3.200e+01, 1.200e+01, 1.700e+01, 3.300e+01, 2.100e+01, 2.700e+01, 2.800e+01, 3.600e+01, 2.000e+01, 1.400e+01, 1.200e+01, 3.800e+01, 2.200e+01, 1.900e+01, 2.800e+01, 5.000e+01, 2.800e+01, 5.900e+01, 3.800e+01, 3.000e+01, 4.400e+01, 6.600e+01, 5.100e+01, 3.900e+01, 5.400e+01, 7.900e+01, 2.500e+01, 1.900e+01, 2.200e+01, 2.800e+01, 2.200e+01, 1.400e+01, 1.500e+01, 8.000e+00, 2.100e+01, 1.300e+01, 1.400e+01, 1.400e+01, 1.600e+01, 1.100e+01, 1.200e+01, 9.000e+00, 1.900e+01, 1.600e+01, 1.800e+01, 5.800e+01, 5.600e+01, 7.000e+00, 6.000e+00, 6.000e+00, 5.000e+00, 2.400e+01, 2.000e+01, 1.700e+01, 1.000e+01, 5.000e+00, 4.000e+00, 1.000e+00, 1.000e+00, 0.000e+00, 3.000e+00, 1.000e+00, 4.000e+00, 1.000e+00, 1.000e+00])

Alternatively, we can use sc.bin, which keeps the underlying events and their metadata:

[6]:
binned = sc.bin(table, edges=[wavelength])
binned
[6]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (106.83 MB)
    • wavelength: 1000
    • wavelength
      (wavelength [bin-edge])
      float64
      Å
      0.566, 0.570, ..., 4.070, 4.073
      Values:
      array([0.566368 , 0.56987505, 0.5733821 , ..., 4.0664059 , 4.06991295, 4.07342 ])
    • (wavelength)
      DataArrayView
      binned data [len=8, len=4, ..., len=1, len=1]
      Values:
      [<scipp.DataArray> Dimensions: Sizes[row:8, ] Coordinates: counter int64 <no unit> (row) [2, 2, ..., 2, 2] module int64 <no unit> (row) [4, 5, ..., 12, 2] segment int64 <no unit> (row) [2, 5, ..., 1, 6] strip int64 <no unit> (row) [246, 254, ..., 254, 253] tof int64 [ns] (row) [11246370, 11248846, ..., 11228774, 11241113] voxel_x float64 [mm] (row) [1168.05, 1167.92, ..., 806.974, 958.018] voxel_y float64 [mm] (row) [204.802, 125.451, ..., -973.658, 532.491] voxel_z float64 [mm] (row) [1044.81, 1141.88, ..., 1229.83, 1051.93] wavelength float64 [Å] (row) [0.569678, 0.569364, ..., 0.567461, 0.569784] wire int64 <no unit> (row) [9, 8, ..., 16, 1] x_pos float64 [mm] (row) [1165.5, 1166.16, ..., 805.081, 958.379] y_pos float64 [mm] (row) [209.158, 119.966, ..., -977.268, 539.914] z_pos float64 [mm] (row) [1043.95, 1145.2, ..., 1223.85, 1059.86] Data: float64 [counts] (row) [1, 1, ..., 1, 1] , <scipp.DataArray> Dimensions: Sizes[row:4, ] Coordinates: counter int64 <no unit> (row) [2, 1, 2, 1] module int64 <no unit> (row) [12, 3, 1, 5] segment int64 <no unit> (row) [4, 1, 3, 3] strip int64 <no unit> (row) [244, 245, 253, 245] tof int64 [ns] (row) [11328714, 11326239, 11290108, 11284314] voxel_x float64 [mm] (row) [913.329, 1195.04, 979.995, 1096.74] voxel_y float64 [mm] (row) [-954.267, 344.575, 647.592, 47.389] voxel_z float64 [mm] (row) [1135.89, 1081.17, 1127.96, 953.231] wavelength float64 [Å] (row) [0.572659, 0.573236, 0.571536, 0.572525] wire int64 <no unit> (row) [21, 14, 8, 1] x_pos float64 [mm] (row) [915.89, 1192.78, 983.249, 1095.83] y_pos float64 [mm] (row) [-948.517, 337.347, 644.185, 41.5285] z_pos float64 [mm] (row) [1136.57, 1081.36, 1125.47, 952.289] Data: float64 [counts] (row) [1, 1, 1, 1] , ..., <scipp.DataArray> Dimensions: Sizes[row:1, ] Coordinates: counter int64 <no unit> (row) [1] module int64 <no unit> (row) [5] segment int64 <no unit> (row) [6] strip int64 <no unit> (row) [96] tof int64 [ns] (row) [79899091] voxel_x float64 [mm] (row) [1145.98] voxel_y float64 [mm] (row) [134.488] voxel_z float64 [mm] (row) [-233.373] wavelength float64 [Å] (row) [4.06818] wire int64 <no unit> (row) [6] x_pos float64 [mm] (row) [1146.23] y_pos float64 [mm] (row) [128.539] z_pos float64 [mm] (row) [-231.906] Data: float64 [counts] (row) [1] , <scipp.DataArray> Dimensions: Sizes[row:1, ] Coordinates: counter int64 <no unit> (row) [1] module int64 <no unit> (row) [10] segment int64 <no unit> (row) [2] strip int64 <no unit> (row) [172] tof int64 [ns] (row) [80152036] voxel_x float64 [mm] (row) [1102.61] voxel_y float64 [mm] (row) [-750.45] voxel_z float64 [mm] (row) [365.383] wavelength float64 [Å] (row) [4.07025] wire int64 <no unit> (row) [22] x_pos float64 [mm] (row) [1105.34] y_pos float64 [mm] (row) [-746.237] z_pos float64 [mm] (row) [365.699] Data: float64 [counts] (row) [1] ]

Since we used the same bin edges for histogramming and binning, computing the sum of values within each bin (given by binned.bins.sum()) yields the same result as histogramming directly. Therefore only a single line is visible in the following plot:

[7]:
bin_sums = binned.bins.sum()
sc.plot({'histogrammed': histogrammed, 'binned': bin_sums})

While the result of histogramming may appear similar or identical, the internal structure is very different. The histogrammed data consists of essentially two arrays, one for the values (yellow) and one for the wavelengths (green):

[8]:
sc.show(histogrammed)
(dims=('wavelength',), shape=(1000,), unit=counts, variances=False)values wavelength wavelengthwavelength(dims=('wavelength',), shape=(1001,), unit=Å, variances=False)values wavelength

The top level structure of the binned data is the same, i.e., we have and array of values and an array of wavelengths. The difference is that each value (bin) stores all contributing table rows:

[9]:
sc.show(binned)
(dims=('wavelength',), shape=(1000,), unit=None, variances=False)values wavelength (dims=('row',), shape=(999998,), unit=counts, variances=False)values row voxel_zvoxel_z(dims=('row',), shape=(999998,), unit=mm, variances=False)values row segmentsegment(dims=('row',), shape=(999998,), unit=None, variances=False)values row y_posy_pos(dims=('row',), shape=(999998,), unit=mm, variances=False)values row countercounter(dims=('row',), shape=(999998,), unit=None, variances=False)values row stripstrip(dims=('row',), shape=(999998,), unit=None, variances=False)values row wirewire(dims=('row',), shape=(999998,), unit=None, variances=False)values row voxel_xvoxel_x(dims=('row',), shape=(999998,), unit=mm, variances=False)values row voxel_yvoxel_y(dims=('row',), shape=(999998,), unit=mm, variances=False)values row wavelengthwavelength(dims=('row',), shape=(999998,), unit=Å, variances=False)values row z_posz_pos(dims=('row',), shape=(999998,), unit=mm, variances=False)values row x_posx_pos(dims=('row',), shape=(999998,), unit=mm, variances=False)values row modulemodule(dims=('row',), shape=(999998,), unit=None, variances=False)values row toftof(dims=('row',), shape=(999998,), unit=ns, variances=False)values row wavelengthwavelength(dims=('wavelength',), shape=(1001,), unit=Å, variances=False)values wavelength

Exercise 1#

  • Define bin edges for z_pos and use it to histogram and bin table. Plot the results.

  • Define different bin edges for z_pos, e.g., with more values. Use sc.bin with the new edges on the result of the binning from the first bullet, i.e., not on the original table table. Why is this possible?

Solution#

[10]:
z = table.coords['z_pos']
z_edges = sc.linspace('z_pos', z.min().value, z.max().value, num=101, unit='mm')
binned_z = sc.bin(table, edges=[z_edges])
solution1 = dict()
solution1['histogrammed'] = sc.histogram(table, bins=z_edges)
solution1['binned'] = binned_z.bins.sum()

z_edges = sc.linspace('z_pos', z.min().value, z.max().value, num=301, unit='mm')
solution1['binned_high_resolution'] = sc.bin(binned_z, edges=[z_edges]).bins.sum()

sc.plot(solution1)

Multi-dimensional spatial binning#

sc.bin can handle multiple dimensions:

[11]:
x = table.coords['x_pos']
y = table.coords['y_pos']
z = table.coords['z_pos']
x_edges = sc.linspace('x_pos', x.min().value, x.max().value, num=32, unit='mm')
y_edges = sc.linspace('y_pos', y.min().value, y.max().value, num=32, unit='mm')
z_edges = sc.linspace('z_pos', z.min().value, z.max().value, num=32, unit='mm')
binned_xyz = sc.bin(table, edges=[z_edges, y_edges, x_edges])
binned_xyz['z_pos', 20:].bins.sum().plot(norm='log', aspect='equal')

Above we can see a cut through the detector assembly, which has the shape of a thick cylinder mantle.

The advantage of binned data over histogrammed data is that metadata for each underlying event is still present. We can therefore change the binning, or bin in additional dimensions. For example, we can select the slice containing \(z = 0\) and turn it into a higher-resolution cut:

[12]:
x_fine = sc.linspace('x_pos', x.min().value, x.max().value, num=41, unit='mm')
y_fine = sc.linspace('y_pos', y.min().value, y.max().value, num=101, unit='mm')
z_slice = binned_xyz['z_pos', sc.scalar(0.0, unit='mm')]
xy_cut = sc.bin(z_slice, edges=[y_fine, x_fine])
xy_cut
[12]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (6.72 MB)
    • y_pos: 100
    • x_pos: 40
    • x_pos
      (x_pos [bin-edge])
      float64
      mm
      419.829, 445.647, ..., 1426.712, 1452.530
      Values:
      array([ 419.829 , 445.646525, 471.46405 , 497.281575, 523.0991 , 548.916625, 574.73415 , 600.551675, 626.3692 , 652.186725, 678.00425 , 703.821775, 729.6393 , 755.456825, 781.27435 , 807.091875, 832.9094 , 858.726925, 884.54445 , 910.361975, 936.1795 , 961.997025, 987.81455 , 1013.632075, 1039.4496 , 1065.267125, 1091.08465 , 1116.902175, 1142.7197 , 1168.537225, 1194.35475 , 1220.172275, 1245.9898 , 1271.807325, 1297.62485 , 1323.442375, 1349.2599 , 1375.077425, 1400.89495 , 1426.712475, 1452.53 ])
    • y_pos
      (y_pos [bin-edge])
      float64
      mm
      -1314.930, -1292.619, ..., 893.817, 916.128
      Values:
      array([-1314.93 , -1292.61942, -1270.30884, -1247.99826, -1225.68768, -1203.3771 , -1181.06652, -1158.75594, -1136.44536, -1114.13478, -1091.8242 , -1069.51362, -1047.20304, -1024.89246, -1002.58188, -980.2713 , -957.96072, -935.65014, -913.33956, -891.02898, -868.7184 , -846.40782, -824.09724, -801.78666, -779.47608, -757.1655 , -734.85492, -712.54434, -690.23376, -667.92318, -645.6126 , -623.30202, -600.99144, -578.68086, -556.37028, -534.0597 , -511.74912, -489.43854, -467.12796, -444.81738, -422.5068 , -400.19622, -377.88564, -355.57506, -333.26448, -310.9539 , -288.64332, -266.33274, -244.02216, -221.71158, -199.401 , -177.09042, -154.77984, -132.46926, -110.15868, -87.8481 , -65.53752, -43.22694, -20.91636, 1.39422, 23.7048 , 46.01538, 68.32596, 90.63654, 112.94712, 135.2577 , 157.56828, 179.87886, 202.18944, 224.50002, 246.8106 , 269.12118, 291.43176, 313.74234, 336.05292, 358.3635 , 380.67408, 402.98466, 425.29524, 447.60582, 469.9164 , 492.22698, 514.53756, 536.84814, 559.15872, 581.4693 , 603.77988, 626.09046, 648.40104, 670.71162, 693.0222 , 715.33278, 737.64336, 759.95394, 782.26452, 804.5751 , 826.88568, 849.19626, 871.50684, 893.81742, 916.128 ])
    • (y_pos, x_pos)
      DataArrayView
      binned data [len=0, len=0, ..., len=0, len=0]
      Values:
      [<scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: counter int64 <no unit> (row) [] module int64 <no unit> (row) [] segment int64 <no unit> (row) [] strip int64 <no unit> (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] wire int64 <no unit> (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: counter int64 <no unit> (row) [] module int64 <no unit> (row) [] segment int64 <no unit> (row) [] strip int64 <no unit> (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] wire int64 <no unit> (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , ..., <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: counter int64 <no unit> (row) [] module int64 <no unit> (row) [] segment int64 <no unit> (row) [] strip int64 <no unit> (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] wire int64 <no unit> (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: counter int64 <no unit> (row) [] module int64 <no unit> (row) [] segment int64 <no unit> (row) [] strip int64 <no unit> (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] wire int64 <no unit> (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] ]
    • z_pos
      (z_pos)
      float64
      mm
      -48.870, 44.790
      Values:
      array([-48.86967742, 44.78967742])
[13]:
xy_cut.bins.sum().transpose().plot(aspect='equal')

Exercise 2#

  • The detector assembly is cylindrical, aligned with the z-axis. Compute the distance from the z-axis (from x and y defined above) and store it as a new coordinate in table. This is the radius in cylinder coordinates.

  • Define bin edges for the radius.

  • Bin table by z_pos and the radius.

  • Plot the result.

Solution#

[14]:
radius = sc.sqrt(x**2 + y**2)
table.coords['radius'] = radius
radius_edges = sc.linspace('radius', radius.min(), radius.max(), num=13)
binned_zr = sc.bin(table, edges=[z_edges, radius_edges])
binned_zr.bins.sum().plot()

Multi-dimensional logical binning#

Above we binned according to x, y, and z. This reflects neither the physics nor the logical structure of the detectors and is generally not very useful. The original table additionally contains information about the logical structure of the detector array. In this case it is divided into modules, segments, counters, wires, and strips. We define:

[15]:
# Note that indices in the file are 1-based, not 0-based
groups = {
    dim: sc.arange(dim, 1, table.coords[dim].max().value + 1, unit=None, dtype='int64')
    for dim in ['module', 'segment', 'counter', 'wire', 'strip']
}
groups
[15]:
{'module': <scipp.Variable> (module: 14)      int64        <no unit>  [1, 2, ..., 13, 14],
 'segment': <scipp.Variable> (segment: 6)      int64        <no unit>  [1, 2, ..., 5, 6],
 'counter': <scipp.Variable> (counter: 2)      int64        <no unit>  [1, 2],
 'wire': <scipp.Variable> (wire: 32)      int64        <no unit>  [1, 2, ..., 31, 32],
 'strip': <scipp.Variable> (strip: 256)      int64        <no unit>  [1, 2, ..., 255, 256]}

Instead of using sc.bin with the edges keyword argument we can use the groups keyword argument to perform a binning based on discrete values. The result is 5-D:

[16]:
binned_logical = sc.bin(table, groups=list(groups.values()))
binned_logical
[16]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (97.30 MB)
    • module: 14
    • segment: 6
    • counter: 2
    • wire: 32
    • strip: 256
    • counter
      (counter)
      int64
      1, 2
      Values:
      array([1, 2])
    • module
      (module)
      int64
      1, 2, ..., 13, 14
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
    • segment
      (segment)
      int64
      1, 2, ..., 5, 6
      Values:
      array([1, 2, 3, 4, 5, 6])
    • strip
      (strip)
      int64
      1, 2, ..., 255, 256
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256])
    • wire
      (wire)
      int64
      1, 2, ..., 31, 32
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32])
    • (module, segment, counter, wire, strip)
      DataArrayView
      binned data [len=1, len=0, ..., len=0, len=0]
      Values:
      [<scipp.DataArray> Dimensions: Sizes[row:1, ] Coordinates: radius float64 [mm] (row) [1094.31] tof int64 [ns] (row) [74730691] voxel_x float64 [mm] (row) [952.598] voxel_y float64 [mm] (row) [545.569] voxel_z float64 [mm] (row) [-1091.35] wavelength float64 [Å] (row) [3.787] x_pos float64 [mm] (row) [952.559] y_pos float64 [mm] (row) [538.643] z_pos float64 [mm] (row) [-1092.5] Data: float64 [counts] (row) [1] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , ..., <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] voxel_x float64 [mm] (row) [] voxel_y float64 [mm] (row) [] voxel_z float64 [mm] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] ]

Exercise 3#

  • Group table using sc.bin but only by strip and wire.

  • Plot the result.

Solution#

[17]:
binned_strip_wire = sc.bin(table, groups=[groups['strip'], groups['wire']])
print(
    'Neutrons arrive from the "left" in the following figure (low wire index).'
    'They are gradually absorbed so the intensity decreases as we reach deeper '
    'voxel layers:'
)
binned_strip_wire.bins.sum().plot()
Neutrons arrive from the "left" in the following figure (low wire index).They are gradually absorbed so the intensity decreases as we reach deeper voxel layers:

From event-based metadata to bin-based metadata#

For each detected neutron our data records the position of the associated voxel. After the logical grouping above, every bin corresponds to a voxel.

It can be more practical to store the voxel position for every bin (voxel) instead of for every event. This can be achieved, e.g., by computing the mean for every bin. Note that in this case all events in a voxel record the same voxel position so this proceedure is wasteful — in practice we may prefer loading the voxel positions directly from a file.

We can also combine the x, y, and z components into a single array of position vectors:

[18]:
pos = sc.zeros(sizes=binned_logical.sizes, dtype=sc.DType.vector3, unit='mm')
# We 'pop' the coordinates. If desired they could be kept by using
# __getitem__ instead
pos.fields.x = binned_logical.bins.coords.pop('voxel_x').bins.mean()
pos.fields.y = binned_logical.bins.coords.pop('voxel_y').bins.mean()
pos.fields.z = binned_logical.bins.coords.pop('voxel_z').bins.mean()
binned_logical.coords['position'] = pos
binned_logical
[18]:
Show/Hide data repr Show/Hide attributes
scipp.DataArray (105.91 MB)
    • module: 14
    • segment: 6
    • counter: 2
    • wire: 32
    • strip: 256
    • counter
      (counter)
      int64
      1, 2
      Values:
      array([1, 2])
    • module
      (module)
      int64
      1, 2, ..., 13, 14
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
    • position
      (module, segment, counter, wire, strip)
      vector3
      mm
      [ 952.598 545.569 -1091.35 ], [nan nan nan], ..., [nan nan nan], [nan nan nan]
      Values:
      array([[[[[[ 952.598, 545.569, -1091.35 ], [ nan, nan, nan], [ 952.598, 545.569, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 961.336, 552.861, -1102.61 ], [ 961.336, 552.861, -1089.18 ], [ 961.336, 552.861, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 970.074, 560.153, -1100.31 ], [ 970.074, 560.153, -1086.9 ], ..., [ nan, nan, nan], [ 970.074, 560.153, 1100.31 ], [ 970.074, 560.153, 1113.88 ]], ..., [[ 1206. , 757.048, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1206. , 757.048, 1418.1 ]], [[ 1214.74 , 764.34 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1214.74 , 764.34 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 946.25 , 553.133, -1091.35 ], [ 946.25 , 553.133, -1078.05 ], [ 946.25 , 553.133, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 954.949, 560.472, -1102.61 ], [ 954.949, 560.472, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 954.949, 560.472, 1089.18 ], [ nan, nan, nan]], [[ 963.648, 567.811, -1113.88 ], [ 963.648, 567.811, -1100.31 ], [ 963.648, 567.811, -1086.9 ], ..., [ nan, nan, nan], [ 963.648, 567.811, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1207.22 , 773.305, -1429.36 ], [ 1207.22 , 773.305, -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1215.92 , 780.644, -1440.63 ], [ 1215.92 , 780.644, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 940.548, 566.09 , -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 949.126, 573.57 , -1102.61 ], [ 949.126, 573.57 , -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 949.126, 573.57 , 1102.61 ]], [[ 957.704, 581.05 , -1113.88 ], [ 957.704, 581.05 , -1100.31 ], [ 957.704, 581.05 , -1086.9 ], ..., [ 957.704, 581.05 , 1086.9 ], [ nan, nan, nan], [ 957.704, 581.05 , 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 1189.31 , 783.013, 1400.82 ], [ 1189.31 , 783.013, 1418.1 ]], [[ 1197.89 , 790.493, -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1197.89 , 790.493, 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1206.46 , 797.973, 1405.74 ], [ nan, nan, nan], [ nan, nan, nan]]], [[[ nan, nan, nan], [ 934.038, 573.515, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 934.038, 573.515, 1091.35 ]], [[ 942.575, 581.041, -1102.61 ], [ 942.575, 581.041, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 942.575, 581.041, 1089.18 ], [ 942.575, 581.041, 1102.61 ]], [[ 951.113, 588.567, -1113.88 ], [ 951.113, 588.567, -1100.31 ], [ 951.113, 588.567, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ 1181.63 , 791.767, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1190.17 , 799.293, -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1190.17 , 799.293, 1429.36 ]], [[ 1198.71 , 806.819, -1440.63 ], [ 1198.71 , 806.819, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 928.055, 586.345, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 928.055, 586.345, 1091.35 ]], [[ nan, nan, nan], [ 936.469, 594.01 , -1089.18 ], [ 936.469, 594.01 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 944.883, 601.674, -1113.88 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 944.883, 601.674, 1113.88 ]], ..., [[ nan, nan, nan], [ 1172.06 , 808.61 , -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1180.47 , 816.274, -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 921.386, 593.628, -1091.35 ], [ 921.386, 593.628, -1078.05 ], [ 921.386, 593.628, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 921.386, 593.628, 1091.35 ]], [[ 929.759, 601.337, -1102.61 ], [ 929.759, 601.337, -1089.18 ], [ nan, nan, nan], ..., [ 929.759, 601.337, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 938.131, 609.046, -1100.31 ], [ nan, nan, nan], ..., [ 938.131, 609.046, 1086.9 ], [ 938.131, 609.046, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1180.94 , 832.614, 1405.74 ], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 915.127, 606.325, -1091.35 ], [ 915.127, 606.325, -1078.05 ], [ 915.127, 606.325, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 923.373, 614.17 , -1102.61 ], [ 923.373, 614.17 , -1089.18 ], [ 923.373, 614.17 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 931.618, 622.015, -1113.88 ], [ 931.618, 622.015, -1100.31 ], [ 931.618, 622.015, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 908.301, 613.461, -1091.35 ], [ 908.301, 613.461, -1078.05 ], [ 908.301, 613.461, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 908.301, 613.461, 1091.35 ]], [[ 916.505, 621.35 , -1102.61 ], [ 916.505, 621.35 , -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 916.505, 621.35 , 1089.18 ], [ 916.505, 621.35 , 1102.61 ]], [[ 924.708, 629.239, -1113.88 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 924.708, 629.239, 1086.9 ], [ nan, nan, nan], [ 924.708, 629.239, 1113.88 ]], ..., [[ nan, nan, nan], [ 1146.21 , 842.24 , -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1154.41 , 850.128, -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1154.41 , 850.128, 1394.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 901.769, 626.02 , -1091.35 ], [ 901.769, 626.02 , -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 901.769, 626.02 , 1091.35 ]], [[ 909.842, 634.042, -1102.61 ], [ 909.842, 634.042, -1089.18 ], [ nan, nan, nan], ..., [ 909.842, 634.042, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 917.916, 642.064, -1113.88 ], [ 917.916, 642.064, -1100.31 ], [ 917.916, 642.064, -1086.9 ], ..., [ 917.916, 642.064, 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1135.91 , 858.651, -1418.1 ], [ 1135.91 , 858.651, -1400.82 ], [ 1135.91 , 858.651, -1383.75 ], ..., [ nan, nan, nan], [ 1135.91 , 858.651, 1400.82 ], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1152.05 , 874.695, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ nan, nan, nan], [ 894.79 , 633.007, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 894.79 , 633.007, 1078.05 ], [ nan, nan, nan]], [[ 902.82 , 641.071, -1102.61 ], [ 902.82 , 641.071, -1089.18 ], [ 902.82 , 641.071, -1075.91 ], ..., [ nan, nan, nan], [ 902.82 , 641.071, 1089.18 ], [ 902.82 , 641.071, 1102.61 ]], [[ 910.851, 649.136, -1113.88 ], [ 910.851, 649.136, -1100.31 ], [ 910.851, 649.136, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 910.851, 649.136, 1113.88 ]], ..., [[ 1127.68 , 866.888, -1418.1 ], [ nan, nan, nan], [ 1127.68 , 866.888, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1135.71 , 874.953, -1429.36 ], [ nan, nan, nan], [ 1135.71 , 874.953, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1143.74 , 883.018, 1405.74 ], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 887.986, 645.421, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 895.884, 653.616, -1102.61 ], [ 895.884, 653.616, -1089.18 ], [ 895.884, 653.616, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 903.782, 661.811, -1113.88 ], [ 903.782, 661.811, -1100.31 ], [ 903.782, 661.811, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1117.03 , 883.073, -1418.1 ], [ nan, nan, nan], [ 1117.03 , 883.073, -1383.75 ], ..., [ nan, nan, nan], [ 1117.03 , 883.073, 1400.82 ], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1124.92 , 891.268, -1394.75 ], ..., [ 1124.92 , 891.268, 1394.75 ], [ 1124.92 , 891.268, 1411.95 ], [ 1124.92 , 891.268, 1429.36 ]], [[ 1132.82 , 899.463, -1440.63 ], [ nan, nan, nan], [ 1132.82 , 899.463, -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1132.82 , 899.463, 1440.63 ]]], [[[ 880.858, 652.254, -1091.35 ], [ 880.858, 652.254, -1078.05 ], [ 880.858, 652.254, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 888.712, 660.491, -1102.61 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 888.712, 660.491, 1102.61 ]], [[ 896.566, 668.728, -1113.88 ], [ 896.566, 668.728, -1100.31 ], [ 896.566, 668.728, -1086.9 ], ..., [ 896.566, 668.728, 1086.9 ], [ nan, nan, nan], [ 896.566, 668.728, 1113.88 ]], ..., [[ 1108.62 , 891.129, -1418.1 ], [ 1108.62 , 891.129, -1400.82 ], [ 1108.62 , 891.129, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1116.48 , 899.366, -1429.36 ], [ nan, nan, nan], [ 1116.48 , 899.366, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1116.48 , 899.366, 1429.36 ]], [[ 1124.33 , 907.603, -1440.63 ], [ 1124.33 , 907.603, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]]], [[[[[ 1015.31 , 417.402, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1015.31 , 417.402, 1064.91 ], [ nan, nan, nan], [ 1015.31 , 417.402, 1091.35 ]], [[ 1024.92 , 423.499, -1102.61 ], [ 1024.92 , 423.499, -1089.18 ], [ 1024.92 , 423.499, -1075.91 ], ..., [ 1024.92 , 423.499, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 1034.54 , 429.596, -1113.88 ], [ nan, nan, nan], [ 1034.54 , 429.596, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1294.01 , 594.226, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1303.62 , 600.323, -1429.36 ], [ nan, nan, nan], [ 1303.62 , 600.323, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1313.23 , 606.421, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1010. , 425.726, -1091.35 ], [ 1010. , 425.726, -1078.05 ], [ 1010. , 425.726, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1019.58 , 431.875, -1102.61 ], [ 1019.58 , 431.875, -1089.18 ], [ 1019.58 , 431.875, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1029.16 , 438.023, -1113.88 ], [ 1029.16 , 438.023, -1100.31 ], [ 1029.16 , 438.023, -1086.9 ], ..., [ nan, nan, nan], [ 1029.16 , 438.023, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1287.75 , 604.04 , 1383.75 ], [ 1287.75 , 604.04 , 1400.82 ], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 1006.03 , 439.313, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1015.5 , 445.617, -1102.61 ], [ 1015.5 , 445.617, -1089.18 ], [ 1015.5 , 445.617, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1024.98 , 451.921, -1113.88 ], [ 1024.98 , 451.921, -1100.31 ], [ 1024.98 , 451.921, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1280.83 , 622.137, -1418.1 ], [ nan, nan, nan], [ 1280.83 , 622.137, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1290.3 , 628.441, -1429.36 ], [ nan, nan, nan], [ 1290.3 , 628.441, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1290.3 , 628.441, 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1299.78 , 634.745, 1405.74 ], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1000.54 , 447.52 , -1091.35 ], [ 1000.54 , 447.52 , -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1009.98 , 453.875, -1102.61 ], [ 1009.98 , 453.875, -1089.18 ], [ 1009.98 , 453.875, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1009.98 , 453.875, 1102.61 ]], [[ nan, nan, nan], [ nan, nan, nan], [ 1019.42 , 460.23 , -1086.9 ], ..., [ 1019.42 , 460.23 , 1086.9 ], [ nan, nan, nan], [ 1019.42 , 460.23 , 1113.88 ]], ..., [[ 1274.35 , 631.812, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 1283.79 , 638.167, 1411.95 ], [ nan, nan, nan]], [[ nan, nan, nan], [ 1293.23 , 644.522, -1423.08 ], [ 1293.23 , 644.522, -1405.74 ], ..., [ nan, nan, nan], [ 1293.23 , 644.522, 1423.08 ], [ nan, nan, nan]]]], [[[[ 996.268, 461.017, -1091.35 ], [ nan, nan, nan], [ 996.268, 461.017, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1005.61 , 467.526, -1102.61 ], [ nan, nan, nan], [ 1005.61 , 467.526, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1005.61 , 467.526, 1102.61 ]], [[ 1014.94 , 474.034, -1113.88 ], [ 1014.94 , 474.034, -1100.31 ], [ 1014.94 , 474.034, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1276.37 , 656.263, -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1285.71 , 662.772, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 990.6 , 469.103, -1091.35 ], [ nan, nan, nan], [ 990.6 , 469.103, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 999.902, 475.661, -1102.61 ], [ 999.902, 475.661, -1089.18 ], [ 999.902, 475.661, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 999.902, 475.661, 1102.61 ]], [[ nan, nan, nan], [ 1009.2 , 482.22 , -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ 1260.36 , 659.288, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1278.96 , 672.404, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1278.96 , 672.404, 1440.63 ]]]], [[[[ 986.041, 482.505, -1091.35 ], [ 986.041, 482.505, -1078.05 ], [ nan, nan, nan], ..., [ 986.041, 482.505, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 995.234, 489.214, -1102.61 ], [ 995.234, 489.214, -1089.18 ], [ 995.234, 489.214, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 995.234, 489.214, 1102.61 ]], [[ 1004.43 , 495.923, -1113.88 ], [ 1004.43 , 495.923, -1100.31 ], [ 1004.43 , 495.923, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1004.43 , 495.923, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1261.85 , 683.777, 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ 1271.04 , 690.486, -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 980.198, 490.466, -1091.35 ], [ 980.198, 490.466, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 989.356, 497.225, -1102.61 ], [ 989.356, 497.225, -1089.18 ], [ 989.356, 497.225, -1075.91 ], ..., [ nan, nan, nan], [ 989.356, 497.225, 1089.18 ], [ nan, nan, nan]], [[ 998.513, 503.983, -1113.88 ], [ 998.513, 503.983, -1100.31 ], [ 998.513, 503.983, -1086.9 ], ..., [ nan, nan, nan], [ 998.513, 503.983, 1100.31 ], [ nan, nan, nan]], ..., [[ 1245.77 , 686.454, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1254.92 , 693.212, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1264.08 , 699.971, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1264.08 , 699.971, 1440.63 ]]]], [[[[ 975.35 , 503.766, -1091.35 ], [ 975.35 , 503.766, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 984.396, 510.673, -1102.61 ], [ 984.396, 510.673, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 993.442, 517.58 , -1113.88 ], [ 993.442, 517.58 , -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1237.68 , 704.063, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1246.73 , 710.97 , 1394.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1255.78 , 717.877, -1405.74 ], ..., [ 1255.78 , 717.877, 1405.74 ], [ 1255.78 , 717.877, 1423.08 ], [ nan, nan, nan]]], [[[ 969.336, 511.599, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 969.336, 511.599, 1078.05 ], [ 969.336, 511.599, 1091.35 ]], [[ 978.345, 518.554, -1102.61 ], [ 978.345, 518.554, -1089.18 ], [ 978.345, 518.554, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 987.354, 525.509, -1113.88 ], [ 987.354, 525.509, -1100.31 ], [ 987.354, 525.509, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 987.354, 525.509, 1113.88 ]], ..., [[ nan, nan, nan], [ 1230.59 , 713.298, -1400.82 ], [ 1230.59 , 713.298, -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1248.61 , 727.208, -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 964.2 , 524.791, -1091.35 ], [ 964.2 , 524.791, -1078.05 ], [ 964.2 , 524.791, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 973.094, 531.892, -1102.61 ], [ 973.094, 531.892, -1089.18 ], [ 973.094, 531.892, -1075.91 ], ..., [ nan, nan, nan], [ 973.094, 531.892, 1089.18 ], [ 973.094, 531.892, 1102.61 ]], [[ 981.989, 538.993, -1113.88 ], [ 981.989, 538.993, -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 981.989, 538.993, 1100.31 ], [ nan, nan, nan]], ..., [[ 1222.13 , 730.727, -1418.1 ], [ 1222.13 , 730.727, -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1231.03 , 737.829, -1429.36 ], [ 1231.03 , 737.829, -1411.95 ], [ 1231.03 , 737.829, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1239.92 , 744.93 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 1239.92 , 744.93 , 1423.08 ], [ nan, nan, nan]]], [[[ 958.018, 532.491, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 966.874, 539.64 , -1102.61 ], [ 966.874, 539.64 , -1089.18 ], [ 966.874, 539.64 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 975.73 , 546.789, -1086.9 ], ..., [ 975.73 , 546.789, 1086.9 ], [ 975.73 , 546.789, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1223.7 , 746.955, -1394.75 ], ..., [ nan, nan, nan], [ 1223.7 , 746.955, 1411.95 ], [ 1223.7 , 746.955, 1429.36 ]], [[ 1232.55 , 754.103, -1440.63 ], [ nan, nan, nan], [ 1232.55 , 754.103, -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]]], [[[[[ 1060.88 , 282.183, -1091.35 ], [ nan, nan, nan], [ 1060.88 , 282.183, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1071.2 , 286.982, -1102.61 ], [ 1071.2 , 286.982, -1089.18 ], [ 1071.2 , 286.982, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1071.2 , 286.982, 1102.61 ]], [[ 1081.52 , 291.781, -1113.88 ], [ 1081.52 , 291.781, -1100.31 ], [ 1081.52 , 291.781, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1370.47 , 426.164, -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1370.47 , 426.164, 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1056.69 , 291.126, -1091.35 ], [ nan, nan, nan], [ 1056.69 , 291.126, -1064.91 ], ..., [ nan, nan, nan], [ 1056.69 , 291.126, 1078.05 ], [ nan, nan, nan]], [[ 1066.98 , 295.98 , -1102.61 ], [ 1066.98 , 295.98 , -1089.18 ], [ 1066.98 , 295.98 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1077.28 , 300.835, -1113.88 ], [ 1077.28 , 300.835, -1100.31 ], [ 1077.28 , 300.835, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1365.51 , 436.762, -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1375.8 , 441.617, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 1054.51 , 305.113, -1091.35 ], [ 1054.51 , 305.113, -1078.05 ], [ 1054.51 , 305.113, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1064.72 , 310.135, -1102.61 ], [ 1064.72 , 310.135, -1089.18 ], [ 1064.72 , 310.135, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1074.94 , 315.157, -1113.88 ], [ nan, nan, nan], [ 1074.94 , 315.157, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1350.7 , 450.75 , -1418.1 ], [ 1350.7 , 450.75 , -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1371.13 , 460.794, 1440.63 ]]], [[[ 1050.13 , 313.963, -1091.35 ], [ 1050.13 , 313.963, -1078.05 ], [ 1050.13 , 313.963, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1060.32 , 319.04 , -1102.61 ], [ 1060.32 , 319.04 , -1089.18 ], [ 1060.32 , 319.04 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1060.32 , 319.04 , 1102.61 ]], [[ 1070.5 , 324.116, -1113.88 ], [ nan, nan, nan], [ 1070.5 , 324.116, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1070.5 , 324.116, 1113.88 ]], ..., [[ nan, nan, nan], [ 1345.54 , 461.184, -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1355.72 , 466.26 , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1365.91 , 471.337, -1440.63 ], [ 1365.91 , 471.337, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ nan, nan, nan], [ 1047.65 , 327.9 , -1078.05 ], [ 1047.65 , 327.9 , -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1057.75 , 333.142, -1089.18 ], [ 1057.75 , 333.142, -1075.91 ], ..., [ nan, nan, nan], [ 1057.75 , 333.142, 1089.18 ], [ 1057.75 , 333.142, 1102.61 ]], [[ 1067.85 , 338.385, -1113.88 ], [ 1067.85 , 338.385, -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1067.85 , 338.385, 1113.88 ]], ..., [[ 1340.61 , 479.923, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1350.71 , 485.165, -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1360.82 , 490.408, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1043.08 , 336.653, -1091.35 ], [ 1043.08 , 336.653, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1053.15 , 341.949, -1102.61 ], [ 1053.15 , 341.949, -1089.18 ], [ 1053.15 , 341.949, -1075.91 ], ..., [ 1053.15 , 341.949, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 1063.22 , 347.246, -1113.88 ], [ 1063.22 , 347.246, -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1335.22 , 490.243, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1335.22 , 490.243, 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 1040.3 , 350.533, -1091.35 ], [ nan, nan, nan], [ 1040.3 , 350.533, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1050.28 , 355.993, -1102.61 ], [ nan, nan, nan], [ 1050.28 , 355.993, -1075.91 ], ..., [ 1050.28 , 355.993, 1075.91 ], [ 1050.28 , 355.993, 1089.18 ], [ 1050.28 , 355.993, 1102.61 ]], [[ 1060.27 , 361.453, -1113.88 ], [ 1060.27 , 361.453, -1100.31 ], [ 1060.27 , 361.453, -1086.9 ], ..., [ 1060.27 , 361.453, 1086.9 ], [ nan, nan, nan], [ 1060.27 , 361.453, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1339.88 , 514.331, -1429.36 ], [ 1339.88 , 514.331, -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1349.87 , 519.791, -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1035.54 , 359.185, -1091.35 ], [ 1035.54 , 359.185, -1078.05 ], [ 1035.54 , 359.185, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1045.49 , 364.698, -1102.61 ], [ 1045.49 , 364.698, -1089.18 ], [ 1045.49 , 364.698, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1045.49 , 364.698, 1102.61 ]], [[ 1055.45 , 370.212, -1113.88 ], [ 1055.45 , 370.212, -1100.31 ], [ 1055.45 , 370.212, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1055.45 , 370.212, 1113.88 ]], ..., [[ 1324.28 , 519.071, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1334.24 , 524.585, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1344.19 , 530.098, -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 1032.45 , 373.002, -1091.35 ], [ 1032.45 , 373.002, -1078.05 ], [ 1032.45 , 373.002, -1064.91 ], ..., [ 1032.45 , 373.002, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 1042.32 , 378.677, -1102.61 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1052.18 , 384.352, -1113.88 ], [ 1052.18 , 384.352, -1100.31 ], [ 1052.18 , 384.352, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ 1318.55 , 537.58 , -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1338.28 , 548.93 , -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1027.51 , 381.548, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1037.34 , 387.276, -1089.18 ], [ nan, nan, nan], ..., [ 1037.34 , 387.276, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 1047.17 , 393.004, -1113.88 ], [ nan, nan, nan], [ 1047.17 , 393.004, -1086.9 ], ..., [ 1047.17 , 393.004, 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1312.72 , 547.656, 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 1024.12 , 395.295, -1091.35 ], [ 1024.12 , 395.295, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1033.86 , 401.182, -1102.61 ], [ 1033.86 , 401.182, -1089.18 ], [ 1033.86 , 401.182, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1033.86 , 401.182, 1102.61 ]], [[ 1043.6 , 407.07 , -1113.88 ], [ 1043.6 , 407.07 , -1100.31 ], [ 1043.6 , 407.07 , -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1306.59 , 566.036, 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 1018.99 , 403.732, -1091.35 ], [ 1018.99 , 403.732, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1028.7 , 409.671, -1102.61 ], [ 1028.7 , 409.671, -1089.18 ], [ 1028.7 , 409.671, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 1028.7 , 409.671, 1102.61 ]], [[ 1038.41 , 415.611, -1113.88 ], [ 1038.41 , 415.611, -1100.31 ], [ 1038.41 , 415.611, -1086.9 ], ..., [ 1038.41 , 415.611, 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 1300.54 , 575.983, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]]], ..., [[[[[ 673.153, -867.152, -1091.35 ], [ nan, nan, nan], [ 673.153, -867.152, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 681.593, -874.787, -1075.91 ], ..., [ 681.593, -874.787, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 690.033, -882.422, -1113.88 ], [ 690.033, -882.422, -1100.31 ], [ 690.033, -882.422, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 690.033, -882.422, 1113.88 ]], ..., [[ 917.922, -1088.57 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 926.363, -1096.2 , -1429.36 ], [ nan, nan, nan], [ 926.363, -1096.2 , -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 679.758, -859.811, -1091.35 ], [ 679.758, -859.811, -1078.05 ], [ 679.758, -859.811, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 688.239, -867.401, -1102.61 ], [ 688.239, -867.401, -1089.18 ], [ 688.239, -867.401, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 696.72 , -874.991, -1113.88 ], [ 696.72 , -874.991, -1100.31 ], [ 696.72 , -874.991, -1086.9 ], ..., [ 696.72 , -874.991, 1086.9 ], [ nan, nan, nan], [ 696.72 , -874.991, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 925.709, -1079.91 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 934.19 , -1087.51 , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 934.19 , -1087.51 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 691.792, -852.356, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 691.792, -852.356, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 700.396, -859.807, -1102.61 ], [ 700.396, -859.807, -1089.18 ], [ 700.396, -859.807, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 700.396, -859.807, 1102.61 ]], [[ 709. , -867.257, -1113.88 ], [ 709. , -867.257, -1100.31 ], [ 709. , -867.257, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 698.236, -844.874, -1091.35 ], [ nan, nan, nan], [ 698.236, -844.874, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 706.88 , -852.278, -1102.61 ], [ 706.88 , -852.278, -1089.18 ], [ 706.88 , -852.278, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 706.88 , -852.278, 1102.61 ]], [[ 715.524, -859.682, -1113.88 ], [ 715.524, -859.682, -1100.31 ], [ 715.524, -859.682, -1086.9 ], ..., [ nan, nan, nan], [ 715.524, -859.682, 1100.31 ], [ nan, nan, nan]], ..., [[ 948.901, -1059.6 , -1418.1 ], [ nan, nan, nan], [ 948.901, -1059.6 , -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 957.545, -1067. , -1429.36 ], [ 957.545, -1067. , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 966.188, -1074.4 , -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 710.106, -837.16 , -1091.35 ], [ 710.106, -837.16 , -1078.05 ], [ nan, nan, nan], ..., [ 710.106, -837.16 , 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 718.869, -844.422, -1102.61 ], [ 718.869, -844.422, -1089.18 ], [ nan, nan, nan], ..., [ 718.869, -844.422, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 727.633, -851.684, -1113.88 ], [ nan, nan, nan], [ 727.633, -851.684, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 727.633, -851.684, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 964.243, -1047.76 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 973.006, -1055.02 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 716.387, -829.54 , -1091.35 ], [ 716.387, -829.54 , -1078.05 ], [ 716.387, -829.54 , -1064.91 ], ..., [ 716.387, -829.54 , 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 725.189, -836.755, -1102.61 ], [ 725.189, -836.755, -1089.18 ], [ 725.189, -836.755, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 725.189, -836.755, 1102.61 ]], [[ 733.991, -843.97 , -1113.88 ], [ 733.991, -843.97 , -1100.31 ], [ 733.991, -843.97 , -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 971.647, -1038.78 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 980.449, -1045.99 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 728.087, -821.57 , -1091.35 ], [ 728.087, -821.57 , -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 728.087, -821.57 , 1078.05 ], [ nan, nan, nan]], [[ 737.005, -828.641, -1102.61 ], [ 737.005, -828.641, -1089.18 ], [ 737.005, -828.641, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 737.005, -828.641, 1102.61 ]], [[ 745.924, -835.711, -1113.88 ], [ 745.924, -835.711, -1100.31 ], [ 745.924, -835.711, -1086.9 ], ..., [ 745.924, -835.711, 1086.9 ], [ nan, nan, nan], [ 745.924, -835.711, 1113.88 ]], ..., [[ 986.729, -1026.61 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 986.729, -1026.61 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 734.2 , -813.816, -1091.35 ], [ 734.2 , -813.816, -1078.05 ], [ 734.2 , -813.816, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 743.157, -820.838, -1089.18 ], [ 743.157, -820.838, -1075.91 ], ..., [ nan, nan, nan], [ 743.157, -820.838, 1089.18 ], [ 743.157, -820.838, 1102.61 ]], [[ 752.113, -827.861, -1113.88 ], [ nan, nan, nan], [ 752.113, -827.861, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 1011.85 , -1031.52 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 745.725, -805.594, -1091.35 ], [ 745.725, -805.594, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 754.795, -812.47 , -1102.61 ], [ 754.795, -812.47 , -1089.18 ], [ 754.795, -812.47 , -1075.91 ], ..., [ 754.795, -812.47 , 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 763.864, -819.345, -1113.88 ], [ 763.864, -819.345, -1100.31 ], [ 763.864, -819.345, -1086.9 ], ..., [ nan, nan, nan], [ 763.864, -819.345, 1100.31 ], [ 763.864, -819.345, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1017.82 , -1011.86 , -1411.95 ], [ nan, nan, nan], ..., [ 1017.82 , -1011.86 , 1394.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ nan, nan, nan], [ 751.669, -797.709, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 760.776, -804.536, -1102.61 ], [ 760.776, -804.536, -1089.18 ], [ 760.776, -804.536, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 769.882, -811.362, -1113.88 ], [ nan, nan, nan], [ 769.882, -811.362, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 769.882, -811.362, 1113.88 ]], ..., [[ 1015.76 , -995.685, -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 1015.76 , -995.685, 1400.82 ], [ nan, nan, nan]], [[ 1024.87 , -1002.51 , -1429.36 ], [ nan, nan, nan], [ 1024.87 , -1002.51 , -1394.75 ], ..., [ nan, nan, nan], [ 1024.87 , -1002.51 , 1411.95 ], [ nan, nan, nan]], [[ 1033.97 , -1009.34 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 763.012, -789.24 , -1091.35 ], [ 763.012, -789.24 , -1078.05 ], [ 763.012, -789.24 , -1064.91 ], ..., [ 763.012, -789.24 , 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 772.229, -795.917, -1102.61 ], [ 772.229, -795.917, -1089.18 ], [ 772.229, -795.917, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 781.446, -802.594, -1113.88 ], [ 781.446, -802.594, -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 1030.3 , -982.878, 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1039.52 , -989.556, -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 1048.73 , -996.233, -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ nan, nan, nan], [ nan, nan, nan], [ 768.784, -781.227, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 768.784, -781.227, 1091.35 ]], [[ 778.037, -787.855, -1102.61 ], [ nan, nan, nan], [ 778.037, -787.855, -1075.91 ], ..., [ 778.037, -787.855, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 787.289, -794.483, -1113.88 ], [ 787.289, -794.483, -1100.31 ], [ nan, nan, nan], ..., [ 787.289, -794.483, 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ 1037.1 , -973.432, -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1046.36 , -980.06 , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 1055.61 , -986.688, -1423.08 ], [ 1055.61 , -986.688, -1405.74 ], ..., [ nan, nan, nan], [ 1055.61 , -986.688, 1423.08 ], [ nan, nan, nan]]]]], [[[[[ 554.991, -947.139, -1091.35 ], [ nan, nan, nan], [ 554.991, -947.139, -1064.91 ], ..., [ 554.991, -947.139, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 562.37 , -955.805, -1102.61 ], [ 562.37 , -955.805, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 569.748, -964.47 , -1086.9 ], ..., [ 569.748, -964.47 , 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 768.973, -1198.43 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 768.973, -1198.43 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 776.352, -1207.1 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 776.352, -1207.1 , 1411.95 ], [ 776.352, -1207.1 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 562.492, -940.717, -1091.35 ], [ 562.492, -940.717, -1078.05 ], [ 562.492, -940.717, -1064.91 ], ..., [ 562.492, -940.717, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 569.917, -949.343, -1102.61 ], [ 569.917, -949.343, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 577.342, -957.968, -1113.88 ], [ 577.342, -957.968, -1100.31 ], [ 577.342, -957.968, -1086.9 ], ..., [ nan, nan, nan], [ 577.342, -957.968, 1100.31 ], [ 577.342, -957.968, 1113.88 ]], ..., [[ 777.817, -1190.86 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 785.242, -1199.49 , 1429.36 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 575.392, -934.886, -1091.35 ], [ 575.392, -934.886, -1078.05 ], [ nan, nan, nan], ..., [ 575.392, -934.886, 1064.91 ], [ 575.392, -934.886, 1078.05 ], [ 575.392, -934.886, 1091.35 ]], [[ 582.957, -943.389, -1102.61 ], [ 582.957, -943.389, -1089.18 ], [ 582.957, -943.389, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 590.521, -951.893, -1113.88 ], [ nan, nan, nan], [ 590.521, -951.893, -1086.9 ], ..., [ 590.521, -951.893, 1086.9 ], [ nan, nan, nan], [ 590.521, -951.893, 1113.88 ]], ..., [[ 794.771, -1181.48 , -1418.1 ], [ nan, nan, nan], [ 794.771, -1181.48 , -1383.75 ], ..., [ 794.771, -1181.48 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 802.336, -1189.99 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ 802.336, -1189.99 , 1394.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 809.901, -1198.49 , -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 809.901, -1198.49 , 1440.63 ]]], [[[ 582.752, -928.303, -1091.35 ], [ 582.752, -928.303, -1078.05 ], [ 582.752, -928.303, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 590.362, -936.765, -1102.61 ], [ 590.362, -936.765, -1089.18 ], [ 590.362, -936.765, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 597.973, -945.228, -1113.88 ], [ nan, nan, nan], [ 597.973, -945.228, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 803.449, -1173.72 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 818.669, -1190.65 , -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 595.522, -922.194, -1091.35 ], [ 595.522, -922.194, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 603.27 , -930.531, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 611.017, -938.868, -1113.88 ], [ 611.017, -938.868, -1100.31 ], [ 611.017, -938.868, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 820.196, -1163.98 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 827.943, -1172.32 , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 602.738, -915.452, -1091.35 ], [ 602.738, -915.452, -1078.05 ], [ 602.738, -915.452, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 610.53 , -923.748, -1102.61 ], [ 610.53 , -923.748, -1089.18 ], [ 610.53 , -923.748, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 618.322, -932.044, -1113.88 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ 828.703, -1156.03 , -1400.82 ], [ nan, nan, nan], ..., [ 828.703, -1156.03 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 836.495, -1164.33 , -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 615.373, -909.068, -1091.35 ], [ nan, nan, nan], [ 615.373, -909.068, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 623.299, -917.235, -1102.61 ], [ 623.299, -917.235, -1089.18 ], [ 623.299, -917.235, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 623.299, -917.235, 1102.61 ]], [[ 631.225, -925.403, -1113.88 ], [ nan, nan, nan], [ 631.225, -925.403, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 845.235, -1145.92 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 622.441, -902.171, -1091.35 ], [ 622.441, -902.171, -1078.05 ], [ 622.441, -902.171, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 622.441, -902.171, 1091.35 ]], [[ 630.411, -910.296, -1102.61 ], [ 630.411, -910.296, -1089.18 ], [ 630.411, -910.296, -1075.91 ], ..., [ 630.411, -910.296, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 638.381, -918.421, -1113.88 ], [ 638.381, -918.421, -1100.31 ], [ 638.381, -918.421, -1086.9 ], ..., [ 638.381, -918.421, 1086.9 ], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 861.538, -1145.92 , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 861.538, -1145.92 , 1429.36 ]], [[ nan, nan, nan], [ 869.507, -1154.05 , -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 869.507, -1154.05 , 1440.63 ]]]], [[[[ 634.934, -895.514, -1091.35 ], [ 634.934, -895.514, -1078.05 ], [ 634.934, -895.514, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 643.036, -903.508, -1089.18 ], [ 643.036, -903.508, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 651.137, -911.502, -1113.88 ], [ 651.137, -911.502, -1100.31 ], [ 651.137, -911.502, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ 869.877, -1127.33 , -1400.82 ], [ 869.877, -1127.33 , -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 877.978, -1135.33 , -1411.95 ], [ 877.978, -1135.33 , -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 641.851, -888.467, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 641.851, -888.467, 1091.35 ]], [[ 649.995, -896.417, -1102.61 ], [ 649.995, -896.417, -1089.18 ], [ 649.995, -896.417, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 658.139, -904.367, -1100.31 ], [ 658.139, -904.367, -1086.9 ], ..., [ 658.139, -904.367, 1086.9 ], [ 658.139, -904.367, 1100.31 ], [ nan, nan, nan]], ..., [[ 878.031, -1119.02 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 654.197, -881.54 , -1091.35 ], [ 654.197, -881.54 , -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 654.197, -881.54 , 1091.35 ]], [[ 662.47 , -889.357, -1102.61 ], [ 662.47 , -889.357, -1089.18 ], [ 662.47 , -889.357, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 670.743, -897.173, -1113.88 ], [ 670.743, -897.173, -1100.31 ], [ 670.743, -897.173, -1086.9 ], ..., [ nan, nan, nan], [ 670.743, -897.173, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ 894.109, -1108.21 , -1383.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 902.382, -1116.03 , 1394.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 910.655, -1123.85 , -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 910.655, -1123.85 , 1440.63 ]]], [[[ nan, nan, nan], [ 660.96 , -874.344, -1078.05 ], [ 660.96 , -874.344, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 669.274, -882.116, -1102.61 ], [ 669.274, -882.116, -1089.18 ], [ 669.274, -882.116, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 677.589, -889.888, -1113.88 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 677.589, -889.888, 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 902.082, -1099.73 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 918.711, -1115.27 , -1440.63 ], [ 918.711, -1115.27 , -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]]], [[[[[ 427.452, -1011.12 , -1091.35 ], [ nan, nan, nan], [ 427.452, -1011.12 , -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 433.645, -1020.67 , -1102.61 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 433.645, -1020.67 , 1089.18 ], [ 433.645, -1020.67 , 1102.61 ]], [[ 439.837, -1030.22 , -1113.88 ], [ 439.837, -1030.22 , -1100.31 ], [ 439.837, -1030.22 , -1086.9 ], ..., [ nan, nan, nan], [ 439.837, -1030.22 , 1100.31 ], [ nan, nan, nan]], ..., [[ 607.032, -1288.05 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 619.417, -1307.15 , 1423.08 ], [ nan, nan, nan]]], [[[ 435.723, -1005.73 , -1091.35 ], [ 435.723, -1005.73 , -1078.05 ], [ 435.723, -1005.73 , -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 441.967, -1015.25 , -1102.61 ], [ nan, nan, nan], [ 441.967, -1015.25 , -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 448.21 , -1024.76 , -1100.31 ], [ 448.21 , -1024.76 , -1086.9 ], ..., [ nan, nan, nan], [ 448.21 , -1024.76 , 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 616.784, -1281.69 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ 623.027, -1291.21 , -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 629.27 , -1300.72 , -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 449.27 , -1001.62 , -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 455.668, -1011.03 , -1102.61 ], [ 455.668, -1011.03 , -1089.18 ], [ 455.668, -1011.03 , -1075.91 ], ..., [ 455.668, -1011.03 , 1075.91 ], [ nan, nan, nan], [ 455.668, -1011.03 , 1102.61 ]], [[ 462.066, -1020.45 , -1113.88 ], [ 462.066, -1020.45 , -1100.31 ], [ 462.066, -1020.45 , -1086.9 ], ..., [ 462.066, -1020.45 , 1086.9 ], [ 462.066, -1020.45 , 1100.31 ], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ 634.811, -1274.59 , -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ 634.811, -1274.59 , 1418.1 ]], [[ nan, nan, nan], [ 641.209, -1284. , -1411.95 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 647.607, -1293.42 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 457.422, -996.048, -1091.35 ], [ 457.422, -996.048, -1078.05 ], [ 457.422, -996.048, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 463.871, -1005.43 , -1102.61 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 470.319, -1014.8 , -1113.88 ], [ 470.319, -1014.8 , -1100.31 ], [ 470.319, -1014.8 , -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ 644.422, -1268.02 , 1383.75 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 650.87 , -1277.4 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 657.319, -1286.78 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 470.877, -991.646, -1091.35 ], [ nan, nan, nan], [ 470.877, -991.646, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 477.477, -1000.92 , -1102.61 ], [ 477.477, -1000.92 , -1089.18 ], [ 477.477, -1000.92 , -1075.91 ], ..., [ nan, nan, nan], [ 477.477, -1000.92 , 1089.18 ], [ nan, nan, nan]], [[ nan, nan, nan], [ 484.078, -1010.19 , -1100.31 ], [ 484.078, -1010.19 , -1086.9 ], ..., [ nan, nan, nan], [ 484.078, -1010.19 , 1100.31 ], [ 484.078, -1010.19 , 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ 668.892, -1269.8 , -1411.95 ], [ 668.892, -1269.8 , -1394.75 ], ..., [ nan, nan, nan], [ 668.892, -1269.8 , 1411.95 ], [ nan, nan, nan]], [[ 675.492, -1279.07 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 478.906, -985.898, -1091.35 ], [ nan, nan, nan], [ 478.906, -985.898, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 485.556, -995.134, -1102.61 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 492.206, -1004.37 , -1113.88 ], [ 492.206, -1004.37 , -1100.31 ], [ 492.206, -1004.37 , -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 671.758, -1253.75 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 492.262, -981.206, -1091.35 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 492.262, -981.206, 1078.05 ], [ 492.262, -981.206, 1091.35 ]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 499.062, -990.333, 1089.18 ], [ nan, nan, nan]], [[ 505.862, -999.459, -1113.88 ], [ nan, nan, nan], [ 505.862, -999.459, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 505.862, -999.459, 1113.88 ]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 689.461, -1245.88 , 1400.82 ], [ 689.461, -1245.88 , 1418.1 ]], [[ nan, nan, nan], [ nan, nan, nan], [ 696.26 , -1255. , -1394.75 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ 703.06 , -1264.13 , -1405.74 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 500.165, -975.285, -1091.35 ], [ 500.165, -975.285, -1078.05 ], [ 500.165, -975.285, -1064.91 ], ..., [ 500.165, -975.285, 1064.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 507.014, -984.375, -1102.61 ], [ 507.014, -984.375, -1089.18 ], [ 507.014, -984.375, -1075.91 ], ..., [ 507.014, -984.375, 1075.91 ], [ nan, nan, nan], [ 507.014, -984.375, 1102.61 ]], [[ 513.863, -993.465, -1113.88 ], [ 513.863, -993.465, -1100.31 ], [ 513.863, -993.465, -1086.9 ], ..., [ 513.863, -993.465, 1086.9 ], [ nan, nan, nan], [ 513.863, -993.465, 1113.88 ]], ..., [[ 698.778, -1238.9 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 513.416, -970.305, -1091.35 ], [ 513.416, -970.305, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 520.413, -979.282, -1102.61 ], [ 520.413, -979.282, -1089.18 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 527.409, -988.259, -1113.88 ], [ 527.409, -988.259, -1100.31 ], [ 527.409, -988.259, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 716.306, -1230.64 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 723.302, -1239.62 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 730.298, -1248.59 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]], [[[ 521.189, -964.214, -1091.35 ], [ 521.189, -964.214, -1078.05 ], [ 521.189, -964.214, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 521.189, -964.214, 1091.35 ]], [[ 528.233, -973.153, -1102.61 ], [ 528.233, -973.153, -1089.18 ], [ 528.233, -973.153, -1075.91 ], ..., [ 528.233, -973.153, 1075.91 ], [ nan, nan, nan], [ nan, nan, nan]], [[ 535.277, -982.093, -1113.88 ], [ nan, nan, nan], [ 535.277, -982.093, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ 535.277, -982.093, 1113.88 ]], ..., [[ 725.469, -1223.46 , -1418.1 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 739.557, -1241.34 , -1440.63 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]], [[[[ 534.329, -958.947, -1091.35 ], [ 534.329, -958.947, -1078.05 ], [ 534.329, -958.947, -1064.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 541.518, -967.771, -1102.61 ], [ 541.518, -967.771, -1089.18 ], [ 541.518, -967.771, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 548.708, -976.594, -1113.88 ], [ 548.708, -976.594, -1100.31 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ 742.814, -1214.82 , -1418.1 ], [ 742.814, -1214.82 , -1400.82 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 750.003, -1223.65 , 1411.95 ], [ nan, nan, nan]], [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ 757.192, -1232.47 , 1423.08 ], [ nan, nan, nan]]], [[[ nan, nan, nan], [ 541.968, -952.689, -1078.05 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ 541.968, -952.689, 1078.05 ], [ nan, nan, nan]], [[ nan, nan, nan], [ 549.204, -961.474, -1089.18 ], [ 549.204, -961.474, -1075.91 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 556.441, -970.258, -1113.88 ], [ 556.441, -970.258, -1100.31 ], [ 556.441, -970.258, -1086.9 ], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], ..., [[ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 759.056, -1216.23 , -1429.36 ], [ nan, nan, nan], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]], [[ 766.292, -1225.01 , -1440.63 ], [ 766.292, -1225.01 , -1423.08 ], [ nan, nan, nan], ..., [ nan, nan, nan], [ nan, nan, nan], [ nan, nan, nan]]]]]])
    • segment
      (segment)
      int64
      1, 2, ..., 5, 6
      Values:
      array([1, 2, 3, 4, 5, 6])
    • strip
      (strip)
      int64
      1, 2, ..., 255, 256
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256])
    • wire
      (wire)
      int64
      1, 2, ..., 31, 32
      Values:
      array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32])
    • (module, segment, counter, wire, strip)
      DataArrayView
      binned data [len=1, len=0, ..., len=0, len=0]
      Values:
      [<scipp.DataArray> Dimensions: Sizes[row:1, ] Coordinates: radius float64 [mm] (row) [1094.31] tof int64 [ns] (row) [74730691] wavelength float64 [Å] (row) [3.787] x_pos float64 [mm] (row) [952.559] y_pos float64 [mm] (row) [538.643] z_pos float64 [mm] (row) [-1092.5] Data: float64 [counts] (row) [1] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , ..., <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] , <scipp.DataArray> Dimensions: Sizes[row:0, ] Coordinates: radius float64 [mm] (row) [] tof int64 [ns] (row) [] wavelength float64 [Å] (row) [] x_pos float64 [mm] (row) [] y_pos float64 [mm] (row) [] z_pos float64 [mm] (row) [] Data: float64 [counts] (row) [] ]

We have removed three event-based coordinates (voxel_x, voxel_y, and voxel_z) and replaced it by a single bin-coordinate, position. Note how the contents of the bins have changed compared to ealier in this tutorial:

[19]:
# Extra dimensions sliced out for display purposed. sc.show can deal with 5-D data
sc.show(binned_logical['strip', 0]['counter', 0]['segment', 0]['module', :5].transpose())
(dims=('wire', 'module'), shape=(32, 5), unit=None, variances=False)values wiremodule (dims=('row',), shape=(999999,), unit=counts, variances=False)values row y_posy_pos(dims=('row',), shape=(999999,), unit=mm, variances=False)values row radiusradius(dims=('row',), shape=(999999,), unit=mm, variances=False)values row toftof(dims=('row',), shape=(999999,), unit=ns, variances=False)values row x_posx_pos(dims=('row',), shape=(999999,), unit=mm, variances=False)values row z_posz_pos(dims=('row',), shape=(999999,), unit=mm, variances=False)values row wavelengthwavelength(dims=('row',), shape=(999999,), unit=Å, variances=False)values row wirewire(dims=('wire',), shape=(32,), unit=None, variances=False)values wire positionposition(dims=('module', 'wire'), shape=(5, 32), unit=mm, variances=False)values module wire segme..segment(dims=(), shape=(), unit=None, variances=False)values count..counter(dims=(), shape=(), unit=None, variances=False)values stripstrip(dims=(), shape=(), unit=None, variances=False)values modulemodule(dims=('module',), shape=(5,), unit=None, variances=False)values module

Equipped with the position of every voxel, we can compute the number of neutrons counted per voxel and create a 3-D scatter plot. The “scatter points” correspond to the voxel positions. In this particular case some voxels had no associated neutrons so the computed position is invalid (binned.coords['position'] contains NaN) and no scatter point is shown:

[20]:
counts_per_voxel = binned_logical.bins.sum()
# The following line selects a subset of voxels based on a stride. This is to keep the size
# of the documentation HTML small. You can comment or remove it to plot all voxels.
counts_per_voxel = counts_per_voxel['counter', 0]['strip', ::4]['wire', ::2]
counts_per_voxel.plot(projection='3d', positions='position', pixel_size=20)

We can also inspect an individual component such as a strip:

[21]:
strip_counts = binned_logical['strip', 200].bins.sum()
strip_counts.plot(projection='3d', positions='position', pixel_size=10)

Exercise 4#

Above, in Logical binning, we binned into individual voxels (based on 5 distinct logical indices) and then computed voxel positions.

  • Repeat this without binning by wire, i.e., use only module, segment, counter, and strip.

  • Compute the resulting mean positions from event positions analogously to before. Alternatively, you can compute these directly from the voxel positions, but note that some voxels have NaN positions, so nanmean must be used instead of mean.

  • Create a scatter plot as before. This should yield a rough projection onto a cylinder.

Solution#

[22]:
proj = sc.bin(table, groups=[groups[key] for key in groups if key != 'wire'])
proj_pos = pos.nanmean('wire')
proj.bins.sum().plot(projection='3d', positions=proj_pos, pixel_size=10, norm='log')

Binning with edges and groups combined#

It is also possible to bin based on “edges” and “groups” at the same time. Since strips roughly correspond to scattering angle, a plot against wavelength and strip may be useful.

Exercise 5#

  • Use sc.bin to bin table by strip and wavelength.

  • Plot the result.

Solution#

[23]:
binned_strip_wavelength = sc.bin(table, groups=[groups['strip']], edges=[wavelength])
binned_strip_wavelength.bins.sum().plot(norm='log')