Skip to content

ToDos und Plan für Bachelor Projekt und Thesis #1

@martin-raden

Description

@martin-raden

Grundidee ist es, ein Python Script zu schreiben, das einem für eine gegeben RRI Kodierung eine Visualisierung im PNG oder SVG Format generiert. Hierzu soll forna(c) verwendet werden.

Bachelor Projekt

1 - fornac verstehen

2 - Headless Browser Tool auswählen

damit die grafik erstellt wird und ein png/svg davon genommen werden kann, muss diese in einem Browser gerendert werden.
Dafür gibt es eine Reihe von Tools zum ausprobieren

  • JSDOM
  • Phantomjs
  • Puppeteer
  • Playwright

3 - fornac via python

  • python script, mit
    • RRI kodierung als Parameter (parameternamen analog zu IntaRNA calls)
    • html mit fornac daten erzeugen
    • js interpreter call und PNG/SVG generierung (auswahl via script parameter)

4 - Erweiterungen

  • optional beide sequencen unterschiedlich einfärben
  • Die Intermolekulare Basenpaare visuell von Intramolekularen trennen (zb roter Kreis)
  • Den gesamten Intermolekularen Abschnitt visuell hervorheben (auch roter Kreis?)
  • Indexing überarbeiten
    • Ein Offset implementieren womit start Index der jeweiligen sequencen möglich in [-unendlich, + unendlich], jedoch ohne 0!
    • Dazu gehörige Input validierung
    • fornac Fehler beseitigen: Fornac schneidet bei 2. sequence immer 2 Nodes ab (ergibt auch Problem beim Indexing
    • Node Index Anzeige durch hovering zu der richtigen Nummerierung anpassen
      • sequence Index voranstellen bsp 1[27] (sequence 1, index 27)
  • generell Input validieren (sequence nur aus A,G,C,U und structure nur aus ()&.)
  • funktionalität aus der run() in funktionen extrahieren
  • hybridDB input zulassen. Bsp: hybridDB="16||||||&-9||||||" mit REGEX
    • script arg parsing umbauen: sequence, hybridDB (keine positional arguments mehr)
    • structure auch hybridDB erkennen (?)
  • input intarna angleichen
  • [ ]

5 - putzen und dokumentieren

  • python code docu
  • tool docu via markdown
    • dependencies
    • usage
    • example
  • testen

Bachelor Arbeit/Thesis

mögliche Erweiterungen der implementierung

  • mit RNAfold alle intramolekulare Basen paare vorhersagen (constraint prediction mit unpaired regions wo die interaktion ist). Dann wieder zusammenbauen und visualisieren
  • output auf Interaktionsbereich reduzieren mit passenden start indize (croppen mit anfang nt und end nt)
  • highlighting bestimmter
    • basenpaare (zB seed interaction)
    • subsequenzen (zB motife etc)
  • probability-based coloring der nodes (zB accessibility information, phylogenetische konserviertheit PhyloP score, ...)
    • auch in tooltip integrieren
  • color palettes die farbenblind-geeignet sind
    • intramolekulare basenpaar farbe passt zur node farbe der sequenz
  • sequenznamen (in tooltip und ggf. auch an sequenz oder in legende)
  • opaqueness/color von GU basenpaaren (vor allem randständige)
    • ggf. farb-/opaqueness-/strichstärken-schema für verschiedene basenpaartypen (GU vs GC|AU vs. andere)
  • ggf. batch-processing option (mehrere RRIs als input) um direkt IntaRNA CSV output zu verarbeiten
  • docu docu docu
  • erweiterte bildformat einstellungen (höhere Auflösung, ...) via parameter oder parameter file
  • rest aus bachelor project erweiterungsliste (s.o.)
  • ggf. integration in IntaRNA webserver output page
  • custom color coding (zB via CSS direktiven als argumente)
  • ggf. highlighting via loop/face-coloring der interaktionsregion (statt umrandung)
    • dazu alle region nt nodes und deren zentren identifizieren,
    • diese (der reihenfolge nach) zu einem polygon verbinden
    • dieses gefüllt zeichnen
    • und in den hintergrund schieben
    • ggf. stroke-width stark erhöhen (abgerundete ecken), um eine "umrahmung" der region zu erhalten
  • ggf. Option um Intervall für Marker zu ändern (changeInterval fornac)

Wunschliste

  • JS-variante (ggf. AI-generiert/-gestützt erzeugt) mit interaktivem force-field gedöns
  • base pair probs

Nicht Möglich

  • integration ins IntaRNA package (weil dependency tree zu arg)

thesis

  • check und beschreibung von alternativen programmen etc aus der literatur
  • beispielhafte Anwendung für bekannte interaktionen aus (IntaRNA-nutzender) literatur
    • vorteile? nachteile? ...?
  • technische beschreibung des workflows des skripts (auch grafisch)
  • diskussion der limits und noch offenen erweiterungsmöglichkeiten und was dafür nötig wäre
  • ...

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions