Skip to main content

orange3-nnviewer

A minimal Orange Data Mining add-on with one widget: Neural Network Viewer — takes the Model output of Orange's Neural Network widget (scikit-learn MLP) and draws the network on a native Qt graphics scene:

  • one column of nodes per layer (inputs, hidden layers, output),
  • feature names on the input neurons, target/class names on the output,
  • edge width proportional to |weight|, blue = positive, red = negative,
  • the numeric weight printed beside each edge (for small networks),
  • biases printed under the neurons they feed,
  • hover: an edge thickens, fills its two end nodes with its colour and tints the associated labels; its tooltip shows "source → target, weight = …", node tooltips show name and bias.

The diagram always scales to fit the window — there is no manual zoom or panning.

Build & install

Build a wheel (a single self-contained plugin file):

cd orange3-nnviewer
uv build            # -> dist/orange3_nnviewer-<ver>-py3-none-any.whl

Install it into the same Python environment that runs Orange (--no-deps: Orange's own dependencies are already present, and re-resolving them can trigger source builds against the bundled framework Python):

uv pip install --python <python-that-runs-orange> --no-deps dist/orange3_nnviewer-*.whl

(For the macOS Orange.app bundle, the interpreter is /Applications/Orange.app/Contents/MacOS/python.)

During development, an editable install is more convenient (edits are live on Orange restart):

uv pip install --python <python-that-runs-orange> -e .

Then start (or restart) Orange Canvas — the widget appears in the toolbox under the "Neural Networks" category, named "NN Viewer":

python -m Orange.canvas

Publish to PyPI

Once published, the widget is installable from Orange's own UI (Options → Add-ons… → Add more… → orange3-nnviewer):

uv build
uv publish          # needs a PyPI token (UV_PUBLISH_TOKEN or --token)

Test outside Canvas

Trains an MLP on the bundled housing dataset and opens the widget alone:

python -m orangecontrib.nnviewer.widgets.ow_nn_viewer

Tests

Run with the Python that runs Orange (Qt renders offscreen, no display needed):

python -m pytest -q

Use in a workflow

File  →  Neural Network  →  Neural Network Viewer
                      Model ─┘

Knobs to tweak (in ow_nn_viewer.py)

  • MAX_LABELED_EDGES — above this edge count, numbers are suppressed (tooltips still show every value).
  • weight label format — f"{weight:.2f}" in _draw.
  • colours — POS_COLOR / NEG_COLOR.
  • edge width scale — 1.0 + 4.0 * abs(weight) / max_abs.
  • node size — radii = [min(0.05, 0.3 * g) for g in y_gaps].
  • label placement — t = 0.60/0.40 along the line in _draw.

Metadata

Release files for orange3-nnviewer 0.1.2

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

Source distribution (sdist)

Source distribution for orange3-nnviewer 0.1.2
File Size Uploaded Provenance Actions
orange3_nnviewer-0.1.2.tar.gz 14.5 kB Without provenance Details for orange3_nnviewer-0.1.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for orange3-nnviewer 0.1.2
File Interpreter ABI Platform Actions
orange3_nnviewer-0.1.2-py3-none-any.whl Python 3 none any Details for orange3_nnviewer-0.1.2-py3-none-any.whl

Total release size: 25.9 kB

Release files / orange3_nnviewer-0.1.2.tar.gz

Download URL orange3_nnviewer-0.1.2.tar.gz
Size 14.5 kB
Tags Source
SHA-256 checksum
How to use checksums
93b21d4d526ee4fe7672d4cd01a2c6769bd9ac59a3ae42c709a0de791fd3f133
BLAKE2b-256 checksum
How to use checksums
08203840ffb1718ebdf138df3eec6ed658cd4ffbed15ecb0da68606686b9b9e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / orange3_nnviewer-0.1.2-py3-none-any.whl

Download URL orange3_nnviewer-0.1.2-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b484abca370a5047e0ac1941b9db32968f89bc4f1c6cf97bf3706e125a45c38b
BLAKE2b-256 checksum
How to use checksums
1f4d99c806fe60c844b7ea394204e053979e2d898a8ef4966d6d31b6e3e87cf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.6 {"installer":{"name":"uv","version":"0.13.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for orange3-nnviewer 0.1.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files No provenance

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