Skip to main content

A Python package for N-Dimensional data visualization.

Project description

NDVisualizer

NDVisualizer (N-Dimensional Visualizer) is a high-dimensional data exploration tool that allows you to slice and visualize datasets in 1-D, 2-D, and 3-D representations, and produce professional grade figures for publications and presentations.

This tool was developed as a free, lightweight alternative for inspecting simulation datasets generated by the Ansys Lumerical® Suite. Based on my research, no existing tool served this specific purpose—please let me know if you are aware of any.

NDVisualizer currently supports matrix and rectilinear datasets saved in Matlab® data files (.mat). It can also be used to visualize any datasets with the same structure. An converter is included for loading CSV file with multi-dimensional support.

Suggestions and contributions are welcome!

demo

demo

Features

  • Visualize and slice high-dimensional data
  • Support for:
    • 1D, 2D, and 3D plots
    • Interactive data exploration
  • Free and Lightweight

Supported Formats

NDVisualizer currently supports:

  • Lumerical® Matrix and rectilinear datasets saved in MATLAB® data format .mat, as well as MATLAB® data file containing datasets with compatible data structure.

    Lumerical Rectilinear Dataset structure:
    {
      "dataset": {
        "parameters": [
          {
            "variable": ["var_name1", "var_name2", ...], 
            "name": ["disp_name1", "disp_name2", ...]
          },
          ...
        ],
        "attributes": [
          {
            "variable": ["attr_name1", "attr_name2", ...], 
            "name": ["disp_attr_name1", "disp_attr_name1", ...]
          },
          ...
        ]
      },
    
      "attr_name1": <attr1_data array>,
      "attr_name2": <attr2 data array>,
      ...
      "var_name1": <var1 data array>,
      "var_name2": <var1 data array>,
      ...
    }
    
  • Comma-Separated Values (.csv) file

  • Support of more data format is comming soon.

Installation

Standalone Executable

An standalone executable file for Windows is available for easy use (compiled with Nuitka). Download the latest release here:

NDVisualizer Releases

Using pip

Install NDVisualizer from PyPI:

pip install ndvis

This will install NDVisualizer and the dependencies.

Run:

python -m ndvis

Run from source code

Download the scource code or clone the repository, then install the dependencies

pip install -r requirements.txt

and run

python NDVisualizer_run.py

Development Installation

For development or to get the latest features:

git clone https://github.com/yuanliu-repo/NDVisualizer_py.git
cd NDVisualizer_py
pip install -e .

Changelogs

v0.2.5

  • add .csv file importor
  • copy data to clipboard or export .csv or .mat file
  • add controls for plots (colorbar and y-axis range control, save and copy plot, change line styles and colormaps, add grid to plot, etc).
  • enhance heatmap plots
  • other bug fixes
  • modularize the source code and upload to PyPI

v0.2.4

  • init project

Contributions

Suggestions, issues, and pull requests are welcome! Feel free to open an issue or contribute directly.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ndvis-0.2.5.tar.gz (8.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ndvis-0.2.5-py2.py3-none-any.whl (149.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file ndvis-0.2.5.tar.gz.

File metadata

  • Download URL: ndvis-0.2.5.tar.gz
  • Upload date:
  • Size: 8.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for ndvis-0.2.5.tar.gz
Algorithm Hash digest
SHA256 70712968e39f15b20da29c2485b71857b2a3661f75be3c5b68d43e67ed45b861
MD5 22db6004ae6e870fa7b7ab8c04ea9bdc
BLAKE2b-256 97931274154f3435743593f35756ffdd14185a6842ca9ff6ef719d233914048d

See more details on using hashes here.

File details

Details for the file ndvis-0.2.5-py2.py3-none-any.whl.

File metadata

  • Download URL: ndvis-0.2.5-py2.py3-none-any.whl
  • Upload date:
  • Size: 149.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.11

File hashes

Hashes for ndvis-0.2.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 036ded9600e91408cf93aacb460eac22594bea9ea98d7c19ee2f0274d74973fc
MD5 7bde320e0c88f2766170fc16d1f0198b
BLAKE2b-256 d0ba15dcbd43a55a201d44acbd71feb86690b9b33f9bf4d80cac65247cf906c8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page