Skip to main content

orange-nmr-addon

NMR-Preprocessing-Widgets für Orange3 — für die Verarbeitung von 1D-NMR- Spektren (z.B. ¹H) im Rahmen multivariater Analysen (Chemometrie).

🧩 Enthaltene Widgets

Widget Funktion
NMR Binning Spektrale Auflösung reduzieren (avg/sum/max-Buckets)
NMR Normalization Gesamtfläche / Maximum / L2 / Referenz-Region
NMR Baseline Correction Polynom-Fit oder Asymmetric Least Squares (ALS)
NMR Filter Savitzky-Golay: Glättung + Ableitungen
NMR Region Exclusion Lösungsmittel-/Artefakt-ppm-Bereiche entfernen
NMR Reference & Alignment Peak-basierte Verschiebung (Alignment)

Die Spektraldaten folgen der Orange/Spectroscopy-Konvention: Die Attributnamen kodieren die x-Achse (ppm-Werte).


⚡ Automatischer Installer (empfohlen)

Dieses Paket ist Teil des WellerLab-Monorepos (github.com/philippweller/WellerLab). Der gemeinsame Installer orange-install.py (auf Repo-Ebene) findet Oranges eigenes Python automatisch und installiert das Paket korrekt (macOS / Windows / Linux):

# NMR-Add-on installieren:
python orange-install.py nmr

# PLS-DA installieren:
python orange-install.py plsda

# nur zeigen, welches Python erkannt wurde:
python orange-install.py --show

# bestehende Installation prüfen:
python orange-install.py --check nmr

Läuft mit jedem Python (nur Standardbibliothek). Falls die Auto-Erkennung ausnahmsweise nicht greift:

python orange-install.py --python /pfad/zum/orange/python

▶️ Direkt ausführen ohne Clone:

curl -fsSL https://raw.githubusercontent.com/philippweller/WellerLab/main/orange-install.py -o orange-install.py && python3 orange-install.py nmr

Das Tool enthält auch den Windows---no-user-Fall automatisch, sodass das Add-on in Oranges eigene site-packages landet statt in die unsichtbare User-Site.


📋 Voraussetzungen

Voraussetzung Hinweis
Orange3 ≥ 3.40 installiert Version unter Hilfe → Über prüfen
Internet-Zugriff auf GitHub zum Herunterladen des Repos

⚠️ Wichtig: Es muss immer Oranges eigenes Python verwendet werden, nicht /usr/bin/python3! Sonst wird das Add-on in der falschen Umgebung installiert und Orange findet es nicht.


🚀 Installation (Schritt für Schritt)

macOS (Orange.app)

Schritt 1 — Oranges eingebettetes Python prüfen:

/Applications/Orange.app/Contents/Frameworks/Python.framework/Versions/Current/bin/python3 --version

Merke dir diesen Pfad (abgekürzt als ORANGEPY).

Schritt 2 — Add-on von GitHub installieren:

ORANGEPY=/Applications/Orange.app/Contents/Frameworks/Python.framework/Versions/Current/bin/python3
$ORANGEPY -m pip install git+https://github.com/philippweller/WellerLab.git@main#subdirectory=orange-nmr-addon

Schritt 3 — Installation prüfen:

$ORANGEPY -c "import orangenmr; print('OK')"

Erscheint OK, ist das Paket korrekt installiert.

Schritt 4 — In Orange öffnen:

Orange starten. Die Widgets erscheinen unter der Kategorie NMR Preprocessing. Du musst Orange nicht neu starten — das Canvas-Fenster erneut öffnen genügt.


Windows (Orange Command Prompt)

Schritt 1 — Orange Command Prompt öffnen:

Startmenü → Orange → Orange Command Prompt.

Schritt 2 — Installieren:

python -m pip install git+https://github.com/philippweller/WellerLab.git@main#subdirectory=orange-nmr-addon

Schritt 3 — Prüfen:

python -c "import orangenmr; print('OK')"

Schritt 4 — Orange öffnen und unter NMR Preprocessing nachschauen.


Linux / Conda / Venv

Schritt 1 — Umgebung aktivieren:

conda activate orange    # oder: source .venv/bin/activate

Schritt 2 — Installieren:

pip install git+https://github.com/philippweller/WellerLab.git@main#subdirectory=orange-nmr-addon

Schritt 3 — Prüfen:

python -c "import orangenmr; print('OK')"

Schritt 4 — Orange starten und das Widget suchen.


Mit Spectroscopy-Integration (optional, empfohlen)

Falls die Software von orangecontrib.spectroscopy installiert ist, nutzt das Add-on dessen getx()-Funktion für eine robustere ppm-Achsen-Erkennung:

# macOS
$ORANGEPY -m pip install ".[full]"
# Windows / Linux / Conda
python -m pip install ".[full]"

🔄 Updates einspielen

Auf jedem Rechner mit installiertem Add-on:

Schritt 1 — aktuelle Version erneut installieren:

# macOS
$ORANGEPY -m pip install --upgrade --force-reinstall git+https://github.com/philippweller/WellerLab.git@main#subdirectory=orange-nmr-addon
# Windows / Linux / Conda
python -m pip install --upgrade --force-reinstall git+https://github.com/philippweller/WellerLab.git@main#subdirectory=orange-nmr-addon

Schritt 2 — Orange neu starten, damit die neuen Widgets geladen werden.

--force-reinstall wird empfohlen, weil Orange Widgets beim Canvas-Öffnen zwischenspeichert.


🗑️ Deinstallation

# macOS
$ORANGEPY -m pip uninstall orangenmr -y
# Windows / Linux / Conda
python -m pip uninstall orangenmr -y

Danach Orange neu starten.


🛠️ Fehlerbehebung

Problem Lösung
import orangenmr schlägt fehl Du hast das falsche Python benutzt (siehe Schritt 1).
Widget erscheint nicht in Orange pip show orangenmr prüfen; Orange vollständig neu starten.
Host key verification failed Nur beim SSH-Workflow relevant — nutze die git+https://-URL.
alte Version bleibt pip install --force-reinstall verwenden (siehe Updates).

📦 Entwicklung / Repo lokal ausprobieren

git clone git@github.com:philippweller/orange-nmr-addon.git
cd orange-nmr-addon
# Editable-Install:
$ORANGEPY -m pip install -e .

📄 Lizenz

MIT © Philipp Weller

Metadata

Release files for orangenmr 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for orangenmr 0.1.0
File Size Uploaded
orangenmr-0.1.0.tar.gz 15.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for orangenmr 0.1.0
File Interpreter ABI Platform
orangenmr-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 34.6 kB

Release files / orangenmr-0.1.0.tar.gz

Download URL orangenmr-0.1.0.tar.gz
Size 15.2 kB
Tags Source
SHA-256 checksum
How to use checksums
98f59eb15d11088135d07d866da2e1af4fd491ce80a90168a268791b227f7bd2
BLAKE2b-256 checksum
How to use checksums
9b75522e7426fd84a0ee6e0f81f37b3f6608817aef292781334d0bd3e407d8cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.8

Release files / orangenmr-0.1.0-py3-none-any.whl

Download URL orangenmr-0.1.0-py3-none-any.whl
Size 19.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
93703acbf882c26a5065df2c76bbd6edfacd33e94d962e8c1ba6face6cfff2d0
BLAKE2b-256 checksum
How to use checksums
5dff862118659619de01e5748f7ea03b63e7d5d7d463407775851a206631fceb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.8

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page