scverse / scverse/spatialdata-plot

Feature request: remove need for intermediate pl calls when chaining renderers

Offen
#54 2 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement priority: low
Vorherrschende Sprache
Python
Sterne
86
Forks
21
Ø Merge
14 Std. 50 Min.
Gemergte PRs (30 T.)
3

Beschreibung

Description of feature

Thanks for the super nice work, @timtreis and @sagar87 ! I think it would be nice if we didn't have to add intermediate calls to pl when chaining renderers. That is, I think it would be nice if instead of this:

sdata.pl.render_images().pl.render_shapes().pl.show()

We could do this:

sdata.pl.render_images().render_shapes().show()

This perhaps could be possible if the render_*() methods returned the plot accessor instead of the SpatialData object. I suppose this means that one couldn't do a pp operation after a pl operation, but maybe that suggests the pl and pp operations should be on the same level of the hierarchy or one should do their preprocessing first, then their plotting. I'm not sure what's best here, but it might be good to experiment with this once all of the p0 functionality is finished.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Untersuchung des pl-Accessors und der render_*-Methoden, insbesondere damit, wie sie derzeit SpatialData zurückgeben und verkettete Aufrufe unterstützen. Vergleiche das vorhandene Beispiel sdata.pl.render_images().pl.render_shapes().pl.show() mit dem vorgeschlagenen Verkettungsverhalten und kläre, wie pl- und pp-Operationen miteinander interagieren sollen. Als abgeschlossen gilt die Aufgabe, wenn ein API-Design festgelegt ist und das Verketten von Renderern ohne dazwischenliegende pl-Aufrufe funktioniert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
data-visualization
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.