figpack-spike-sorting 0.1.1__py3-none-any.whl → 0.1.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- .VerticalToolbar{overflow:hidden;position:absolute}.HorizontalToolbar{display:flex;justify-content:center;align-items:center;overflow:hidden;margin:auto}.SortableTableWidget .MuiTableCell-root{padding:1px 0;font-size:12px;border:solid 1px #f0f0f0}.SortableTableWidget .MuiTableRow-root.selectedRow{background-color:#b5d1ff}.SortableTableWidget .MuiTableRow-root.currentRow{background-color:#95b1df}.SortCaretSpan{font-size:16px;color:gray;padding-left:3px;padding-right:5px;padding-top:2px}.SortableTableWidget .unitLabel{width:10px;height:10px;position:relative;display:inline-block}.SortableTableWidget .SortableTableCheckbox{padding:1px}.NiceTable .MuiTableCell-root{padding:5px}.NiceTable .MuiIconButton-root{padding:1px}
1
+ .VerticalToolbar{overflow:hidden;position:absolute}.HorizontalToolbar{display:flex;justify-content:center;align-items:center;overflow:hidden;margin:auto}.compact-table-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:28px;line-height:1;overflow:auto;background:#fff}.compact-table{width:100%;border-collapse:collapse;border-spacing:0;font-size:28px;table-layout:auto;background:#fff}.compact-table-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #d1d5db;border-bottom:2px solid #9ca3af;padding:1px 3px;font-size:28px;font-weight:600;text-align:left;height:16px;line-height:1;white-space:nowrap;position:sticky;top:0;z-index:10;color:#374151;text-transform:uppercase;letter-spacing:.025em;user-select:none;transition:all .15s ease}.compact-table-header:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.compact-table-cell{border-right:1px solid #e5e7eb;border-bottom:1px solid #f3f4f6;padding:0 3px;font-size:28px;height:14px;line-height:1;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px;color:#1f2937;transition:background-color .1s ease}.compact-table-row{height:14px;transition:all .1s ease}.compact-table-row:nth-child(2n){background-color:#fafafa}.compact-table-row:hover{background-color:#f0f9ff!important;transform:scale(1.002);box-shadow:0 1px 3px #0000000d}.compact-table-row.selected{background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;border-left:3px solid #3b82f6}.compact-table-row.current{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-left:3px solid #f59e0b;font-weight:600}.sort-indicator{font-size:7px;margin-left:1px;color:#6b7280;font-weight:700;text-shadow:0 1px 1px rgba(255,255,255,.8)}.compact-table input[type=checkbox]{transform:scale(.7);margin:0;padding:0;accent-color:#3b82f6;cursor:pointer}.compact-table-cell>span{font-size:28px!important;line-height:1!important}.compact-table-cell>div{font-size:28px!important;line-height:1!important}.compact-table .unitLabel{width:6px;height:6px;display:inline-block;margin-right:2px;border-radius:1px;box-shadow:0 1px 2px #0000001a}.compact-table *{font-size:28px!important;line-height:1!important}.compact-table-cell:last-child{border-right:none}.compact-table-container{box-shadow:0 1px 3px #0000001a;border-radius:4px;overflow:hidden}.compact-table input[type=checkbox]:checked{background-color:#3b82f6;border-color:#3b82f6}.SortableTableWidget .MuiTableCell-root,.SortableTableWidget .MuiTableRow-root,.SortableTableWidget .MuiTable-root,.SortableTableWidget *{font-size:28px!important;line-height:1!important;padding:0 3px!important;height:14px!important;min-height:14px!important;max-height:14px!important}.compact-table-container::-webkit-scrollbar{width:8px;height:8px}.compact-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.compact-table-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.compact-table-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.NiceTable .MuiTableCell-root{padding:5px}.NiceTable .MuiIconButton-root{padding:1px}
@@ -0,0 +1,44 @@
1
+ from typing import List
2
+ import json
3
+ import numpy as np
4
+
5
+ import figpack
6
+
7
+ from ..spike_sorting_extension import spike_sorting_extension
8
+
9
+
10
+ class SortingCuration(figpack.ExtensionView):
11
+ def __init__(
12
+ self,
13
+ *,
14
+ default_label_options: List[str] = ["mua", "good", "noise"],
15
+ curation: dict = {},
16
+ ):
17
+ """
18
+ Initialize a SortingCuration view
19
+
20
+ Args:
21
+ default_label_options: List of default label options for the view
22
+ """
23
+ super().__init__(
24
+ extension=spike_sorting_extension, view_type="spike_sorting.SortingCuration"
25
+ )
26
+ self.default_label_options = default_label_options
27
+ self.curation = curation
28
+
29
+ def _write_to_zarr_group(self, group: figpack.Group) -> None:
30
+ """
31
+ Args:
32
+ group: Zarr group to write data into
33
+ """
34
+ super()._write_to_zarr_group(group)
35
+
36
+ # Store view parameters
37
+ group.attrs["default_label_options"] = self.default_label_options
38
+
39
+ curation_json = json.dumps(self.curation).encode("utf-8")
40
+ curation_array = np.frombuffer(curation_json, dtype=np.uint8)
41
+ group.create_dataset(
42
+ "curation",
43
+ data=curation_array,
44
+ )
@@ -19,6 +19,7 @@ from .UnitMetricsGraph import (
19
19
  UnitMetricsGraphMetric,
20
20
  UnitMetricsGraphUnit,
21
21
  )
22
+ from .SortingCuration import SortingCuration
22
23
 
23
24
  __all__ = [
24
25
  "Autocorrelograms",
@@ -40,4 +41,5 @@ __all__ = [
40
41
  "UnitMetricsGraph",
41
42
  "UnitMetricsGraphMetric",
42
43
  "UnitMetricsGraphUnit",
44
+ "SortingCuration",
43
45
  ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: figpack_spike_sorting
3
- Version: 0.1.1
3
+ Version: 0.1.2
4
4
  Summary: Spike Sorting specific extension for figpack
5
5
  Home-page: https://github.com/flatironinstitute/figpack
6
6
  Author: figpack contributors
@@ -1,7 +1,7 @@
1
- figpack_spike_sorting/__init__.py,sha256=yFZ0ILkrRk7vq9ZLGz8deON3XnXp3HMi40qBdK9BYfk,100
2
- figpack_spike_sorting/figpack_spike_sorting.js,sha256=29zXjIQZQUvwLmuD1g4heugJ1987YOt6gr-a1FSsUxI,775729
1
+ figpack_spike_sorting/__init__.py,sha256=mrQmwb0pdTVRVtmrsgX728eZfAu_G1U2lpS532M1X9Q,100
2
+ figpack_spike_sorting/figpack_spike_sorting.js,sha256=DtTJ9DxjUOIkxeFULc4q65bc1ce751aeRiIiQ5CDZYc,705056
3
3
  figpack_spike_sorting/spike_sorting_extension.py,sha256=ugpk8hDsO4RmyQRNjfhB4Pw5p10FmhQeu3koBynSPHU,755
4
- figpack_spike_sorting/style.css,sha256=O9PbGwIks7Qd1XH6y11fJGdprJL1u6z4HRudU2Npl4I,726
4
+ figpack_spike_sorting/style.css,sha256=R4pcnrpSMpOsBn7X1t-JBP8ODktsc5e8o95Fl_0LVps,3208
5
5
  figpack_spike_sorting/views/AutocorrelogramItem.py,sha256=qHmvIdHpbfVA_utPb5N2oP3hSP2cGnlT8VLaxOXV4UM,738
6
6
  figpack_spike_sorting/views/Autocorrelograms.py,sha256=zNeYM7tVXhBCaN-OWtMaIUJZUdAKh6tEidQTZ1E7N8A,3744
7
7
  figpack_spike_sorting/views/AverageWaveforms.py,sha256=tHYeURvJFyKpxpPpMc12jeQBxm9iGFzHos2G92Z0kIk,5220
@@ -9,6 +9,7 @@ figpack_spike_sorting/views/CrossCorrelogramItem.py,sha256=uSd0i2hupteuILi_aKp7b
9
9
  figpack_spike_sorting/views/CrossCorrelograms.py,sha256=begMIpv5KG6ycH5fS85SPpXxmjZZHoIYGNcH8qBw0S0,4492
10
10
  figpack_spike_sorting/views/RasterPlot.py,sha256=MyLes4QpYs28C3IPq48-lo9_NU6cYVhO8QErgcZsy_4,9910
11
11
  figpack_spike_sorting/views/RasterPlotItem.py,sha256=iW7fuDEjSfvf5YMIwrF_6cmKvD76oCigOUMHtGgBsPI,638
12
+ figpack_spike_sorting/views/SortingCuration.py,sha256=zGzdfrOZ-Dg8828dbRKTDSRw7mRzjddCn2CD3tDajNE,1245
12
13
  figpack_spike_sorting/views/SpikeAmplitudes.py,sha256=dH5Dpgiys8WwdhESesxnuGQsZjKDMbs8eSL1YklnsL8,13178
13
14
  figpack_spike_sorting/views/SpikeAmplitudesItem.py,sha256=j5Na-diY-vRUAPu0t0VkyFCSKFnQ_f5HT077mB3Cy8c,1134
14
15
  figpack_spike_sorting/views/UnitLocations.py,sha256=N7YRAqvtShkVcNPnLu4gIIy2HqgGco5MJRr7YLoTaL0,2338
@@ -17,8 +18,8 @@ figpack_spike_sorting/views/UnitSimilarityScore.py,sha256=cJA9MkETos9qHhV1tqgA7S
17
18
  figpack_spike_sorting/views/UnitsTable.py,sha256=dNWBcdN9aSmTdNF1fNZKXLcPwweLzbYnWGhxR9q9BZI,2760
18
19
  figpack_spike_sorting/views/UnitsTableColumn.py,sha256=zBnuoeILTuiVLDvtcOxqa37E5WlbR12rlwNJUeWXxY4,847
19
20
  figpack_spike_sorting/views/UnitsTableRow.py,sha256=rEb2hMTA_pl2fTW1nOvnGir0ysfNx4uww3aekZzfWjk,720
20
- figpack_spike_sorting/views/__init__.py,sha256=32LVR983RlvbGblG2akBJuj4ZEIvVgqmap5OoJAAALA,1248
21
- figpack_spike_sorting-0.1.1.dist-info/METADATA,sha256=nTJtfd3iXJ_1us8HEvsu1EQLNr3tjms_9KSvmNRUQHQ,1218
22
- figpack_spike_sorting-0.1.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
23
- figpack_spike_sorting-0.1.1.dist-info/top_level.txt,sha256=CAkWrQc1wGK5laYDkT2GBjGgAuNwWNXKodTQlTcpxus,22
24
- figpack_spike_sorting-0.1.1.dist-info/RECORD,,
21
+ figpack_spike_sorting/views/__init__.py,sha256=m7XRK-rCsqXXbNtilncHsUzDK09j3gWeTqfYWUs9_jM,1316
22
+ figpack_spike_sorting-0.1.2.dist-info/METADATA,sha256=5jEoyq4mlvpIJIHJT17j07hADVCjyCXMz7ldIJev9YI,1218
23
+ figpack_spike_sorting-0.1.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
24
+ figpack_spike_sorting-0.1.2.dist-info/top_level.txt,sha256=CAkWrQc1wGK5laYDkT2GBjGgAuNwWNXKodTQlTcpxus,22
25
+ figpack_spike_sorting-0.1.2.dist-info/RECORD,,