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-reinstallwird 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)
| File | Size | Uploaded | |
|---|---|---|---|
| orangenmr-0.1.0.tar.gz | 15.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|