Skip to main content
Orochi Logo

orochi.view

PyPi Forge PythonVersion PR

CI Codecov Black Tracking

Interactive Data and Structural Visualization for the Orochi Ecosystem

The orochi.view package serves as the dedicated visualization toolkit within the Orochi framework. It provides interactive, publication-quality 2D/3D visual inspection components tailored specifically for atomic crystallographic structures, nanoparticles, low-dimensional materials (2D nanosheets), and X-ray/neutron scattering profiles (such as the Pair Distribution Function, G(r)).

Key Capabilities

  • Interactive 3D Structure Viewer (``py3Dmol`` & WebGL): Encapsulated in the ModelViewer class (orochi.view.model_viewer), this component enables high-performance WebGL rendering of atomic lattices, unit cell boundaries, bonds, and coordination envelopes. Inheriting directly from orochi.base.core.OrochiBase, the viewer dynamically syncs with structural parameters defined in orochi.phase, allowing immediate visual updates in Gradio web interfaces when parameters are adjusted.

  • Dynamic Total Scattering & PDF Plots (``Plotly``): Through orochi.view.pdf, users can render interactive, responsive Plotly figures comparing observed and simulated data (G(r), F(Q), S(Q)). Features include real-time fit difference profiles ($Delta G(r)$), synchronized zoom and hover tooltips, and customizable plotting layouts optimized for both standalone notebooks and web GUIs.

  • Optimization & Bayesian Parameter Landscape Diagnostics (``Optuna`` & ``Plotly``): Diagnostic plots for Bayesian global optimization and least-squares refinement, including hyperparameter importance rankings, slice diagrams, and optimization objective histories (orochi.view.optuna.plots).

Package Status & Future Roadmap

Installation

Using pip:

pip install orochi.view

From source:

git clone https://github.com/Tominaka-Laboratory/orochi.view.git
cd orochi.view
pip install -e .

To confirm the installation was successful, run:

python -c "import orochi.view; print(orochi.view.__version__)"

Quick Start

1. 3D Atomic Structure Visualization with ModelViewer

from orochi.phase import Phase
from orochi.view.model_viewer import ModelViewer

# Load crystallographic structure
phase = Phase()
phase.read_cif("CeO2.cif")

# Render interactive 3D WebGL model
viewer = ModelViewer()
html_output = viewer.view_model(phase)

2. Interactive PDF Comparison with Plotly

from orochi.view.pdf import interactive

# Plot experimental vs. simulated G(r)
fig = interactive.plot(
    r_obs, g_obs,
    r_sim, g_sim,
    title="CeO2 PDF Refinement"
)
fig.show()

Support and Contribute

The orochi.view project welcomes your expertise and enthusiasm! If you see a bug or want to request a feature, please report it as an issue and/or submit a fix as a PR.

Before contributing, please read our Code of Conduct.

License

This project is licensed under the GNU General Public License v3.0 (GPLv3). See the LICENSE.rst file for details.

Citation

If you use Orochi in your research, please cite:

@article{tominaka2026orochi,
  title   = {Orochi: A Physics-Grounded Python Package for Pair Distribution Function Analysis of Crystalline and Low-Dimensional Materials},
  author  = {Tominaka, Satoshi},
  journal = {ChemRxiv},
  year    = {2026},
  url     = {https://chemrxiv.org/doc/d84591ff-85b9-489c-839a-4f7170dcc1c4}
}

Contact

For questions or feedback, please open a GitHub issue or contact Dr. Satoshi Tominaka at tominaka.satoshi@nims.go.jp.

Metadata

Release files for orochi.view 4.0.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 orochi.view 4.0.0
File Size Uploaded Provenance
orochi_view-4.0.0.tar.gz 42.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for orochi.view 4.0.0
File Interpreter ABI Platform
orochi_view-4.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 86.6 kB

Release files / orochi_view-4.0.0.tar.gz

Download URL orochi_view-4.0.0.tar.gz
Size 42.8 kB
Tags Source
SHA-256 checksum
How to use checksums
1d85fb9c02ec1d20c3dc28fb4c7fbee4098e566a86743aa866a47316d77fcba9
BLAKE2b-256 checksum
How to use checksums
0840445e5554209fa0683cf0476aed2d484c92b4ddc99548036195d35dcd7d99
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Release files / orochi_view-4.0.0-py3-none-any.whl

Download URL orochi_view-4.0.0-py3-none-any.whl
Size 43.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c387fae4ed12ab586ad1084f9c39f7eaf5ebfb3458ec836233f9569f2a30cee5
BLAKE2b-256 checksum
How to use checksums
545789f900e0cb8d2a2ead6184291b6be603afe6d26cf59f47361ba1106a5062
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Security for orochi.view 4.0.0

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

4.0.0 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