Shapes with string indices cannot be displayed

Aperta Adatta ai principianti
#404 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
75/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
pandas, python

Direzione di ricerca

L'errore si verifica in src/napari_spatialdata/utils/_viewer_utils.py riga 21 dove si presume che df.index[i] sia un intero ma è una stringa come 'aaaaaaaa-1'. Esamina la funzione _get_polygons_properties per capire come gestisce gli indici. Controlla se è necessario convertire in int o se gli indici stringa possono essere preservati. Guarda la pull request collegata #397 per il contesto. Testa con un dataset contenente indici stringa per verificare la correzione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

In a lot of my datasets the segmentation polygons have the barcode of the cell they describe.

This leads to an error here:

https://github.com/scverse/napari-spatialdata/blob/75b8c346bee64ad7428d753b62eb2f8dff64a0c2/src/napari_spatialdata/utils/_viewer_utils.py#L21

is there a reason this needs to be converted? Seems to display fine without this step.

I think there is also a pull request about this #397

Name: napari-spatialdata
Version: 0.7.2

Error message:
ValueError Traceback (most recent call last) File ~/mambaforge/envs/napari/lib/python3.12/site-packages/napari_spatialdata/_sdata_widgets.py:162, in DataLoadThread.run(self) 158 layer = self.sdata_widget.viewer_model.get_sdata_points( 159 self._sdata, self._text, self._selected_cs, self._multi 160 ) 161 elif self._data_type == "shapes": --> 162 layer = self.sdata_widget._get_shapes( 163 self._sdata, 164 self._text, 165 self._selected_cs, 166 self._multi, 167 ) File ~/mambaforge/envs/napari/lib/python3.12/site-packages/napari_spatialdata/_sdata_widgets.py:322, in SdataWidget._get_shapes(self, sdata, key, selected_cs, multi) 318 return self.viewer_model.get_sdata_circles( 319 sdata, key, selected_cs, multi 320 ) 321 if isinstance( 322 sdata.shapes[original_name].iloc[0].geometry, 323 (shapely.geometry.Polygon, shapely.geometry.MultiPolygon), 324 ): --> 325 return self.viewer_model.get_sdata_shapes( 326 sdata, key, selected_cs, multi 327 ) File ~/mambaforge/envs/napari/lib/python3.12/site-packages/napari_spatialdata/_viewer.py:621, in SpatialDataViewer.get_sdata_shapes(self, sdata, key, selected_cs, multi) 618 df = df.sort_index() 620 simplify = len(df) > config.POLYGON_THRESHOLD --> 621 polygons, indices = _get_polygons_properties( 622 df, simplify, include_z=include_z 623 ) File ~/mambaforge/envs/napari/lib/python3.12/site-packages/napari_spatialdata/utils/_viewer_utils.py:21, in _get_polygons_properties(df, simplify, include_z) 18 add_z = include_z and "z" in axes 20 for i in range(len(df)): ---> 21 indices.append(int(df.index[i])) ValueError: invalid literal for int() with base 10: 'aaaaaaaa-1'

Lingua principale
Python
Stelle
91
Fork
27
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di scverse/napari-spatialdata

Tutte le issue di scverse/napari-spatialdata

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.