Skip to main content

PyVista

3D visualization and mesh analysis for science and engineering

PyVista examples gallery

PyPI Conda NumFOCUS Affiliated JOSS paper MIT License

PyVista is an open source, community-owned project, MIT licensed and NumFOCUS Affiliated.

CoDimensional PBC, founded by PyVista maintainers, is the project's commercial steward.

PyVista provides:

  • a NumPy-native API for 3D visualization and mesh analysis
  • dataset structures and filters for points, surfaces, and volumes
  • one plotting framework for notebooks, scripts, CI, and apps
  • a streamlined 3D interface for newcomers and graphics experts alike

PyVista IPython demo

Why PyVista

PyVista is the foundational Python library for 3D visualization and mesh analysis in scientific computing and engineering. It plays the same role for 3D data that pandas plays for tabular data and xarray plays for labeled n-dimensional arrays: NumPy-native datasets for point clouds, surfaces, and volumetric meshes; a filter API covering clipping, slicing, thresholding, smoothing, and dozens of other operations; and a unified plotting framework that runs interactively in Jupyter notebooks, headlessly in CI, and as embedded views inside larger web and desktop applications.

Built for production

PyVista is the reliable layer between user code and the underlying graphics stack. The library is image-regression tested on every commit across all Python versions still in their lifecycle and VTK releases, holds its public API stable through a deliberate deprecation lifecycle, and locks rendering behavior under visual regression baselines. The C++ toolkit underneath provides few of these assurances and doesn't share our enthusiasm for testing and reliability, which is why downstream science and engineering teams build on PyVista.

Built to extend

Your downstream code can build on PyVista through a small, lazily evaluated extension API. Third-party packages attach domain-specific filters and plotter components via registered accessors, with no subclassing, no monkey-patching, and no vendoring of upstream algorithms. See Extending PyVista for the contract.

Quickstart

PyVista runs on Python 3.10+:

pip install pyvista

Or via conda-forge:

conda install -c conda-forge pyvista

Try PyVista in your browser without installing anything, on MyBinder.

Command line interface

PyVista also installs a pyvista CLI for quick plotting, format conversion, and mesh validation, without writing any Python:

# Plot a mesh file in an interactive window
pyvista plot bunny.stl

# Convert a mesh file to another format
pyvista convert bunny.stl .vtp

# Validate a mesh's data, points, and cells
pyvista validate bunny.stl

See the CLI reference for the full set of commands and options.

Documentation

For general questions, ideas, or to share what you've built with PyVista, start a thread in GitHub Discussions or join the Slack community.

Connections

PyVista is used across science and engineering disciplines to visualize 3D data and models, generate publication-quality figures, automate analysis workflows, and build custom applications on top of PyVista's 3D capabilities.

  • awesome-pyvista: a continuously updated list of domain-specific tooling that interoperates with or is built on PyVista.
  • Connections page: selected highlights and context on how PyVista is used across the community.

Contributing

Contributor Covenant Code Triage Open in GitHub Codespaces

PyVista is mostly maintained on a volunteer basis and we welcome contributions of every shape. Bug reports, documentation fixes, new examples, filter ideas; all of it helps. Start with the Contributing Guide and our Code of Conduct.

Authors

contrib.rocks

PyVista is built by a global community. See the contributors page and the active list of authors. Made with contrib rocks.

Professional support

Many users and organizations rely on PyVista in production workflows, research pipelines, and custom visualization systems. For expert guidance, development help, or guaranteed support, there are several ways to engage with the people who build and maintain PyVista.

For general inquiries, reach out to info@pyvista.org and we can help connect you with the right community experts for your 3D visualization or analysis needs.

For professional services such as consulting, custom development, feature design, integration support, or training, consider sponsoring PyVista's core developers through the "Sponsor this project" section on GitHub. Sponsorship provides direct access to experts and helps sustain the maintenance and feature work that keeps PyVista reliable. More details in the discussion post: https://github.com/pyvista/pyvista/discussions/4033.

Citing PyVista

If you use PyVista in scientific research, please cite the JOSS paper.

Sullivan and Kaszynski (2019). PyVista: 3D plotting and mesh analysis through a streamlined interface for the Visualization Toolkit (VTK). Journal of Open Source Software, 4(37), 1450. https://doi.org/10.21105/joss.01450

@article{sullivan2019pyvista,
  doi = {10.21105/joss.01450},
  url = {https://doi.org/10.21105/joss.01450},
  year = {2019},
  month = {May},
  publisher = {The Open Journal},
  volume = {4},
  number = {37},
  pages = {1450},
  author = {Bane Sullivan and Alexander Kaszynski},
  title = {{PyVista}: {3D} plotting and mesh analysis through a streamlined interface for the {Visualization Toolkit} ({VTK})},
  journal = {Journal of Open Source Software}
}

Status

Deployment: PyPI Python versions Conda nix Packaging status

Build: CI python pre-commit.ci status

Quality: codacy codecov Ruff code style: prettier

Activity: PyPI downloads Conda downloads GitHub Repo stars Good first issue

Citation: JOSS Zenodo

Community: Slack Discussions

Affiliations & mentions: NumFOCUS Affiliated Awesome Scientific Computing

Release files for pyvista 0.49.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 pyvista 0.49.0
File Size Uploaded
pyvista-0.49.0.tar.gz 2.7 MB Details

Built distribution (wheel)

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

Total release size: 5.4 MB

Release files / pyvista-0.49.0.tar.gz

Download URL pyvista-0.49.0.tar.gz
Size 2.7 MB
Tags Source
SHA-256 checksum
How to use checksums
5bc914769dfa9baeedb3b761c81e3326bd4c7a3aeed475c25f164c798806dba2
BLAKE2b-256 checksum
How to use checksums
998ffc7f2662d989d489d4b9048fdc030f6960ad5a0d09dd00016abc64ffa02d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.

Transparency log

Release files / pyvista-0.49.0-py3-none-any.whl

Download URL pyvista-0.49.0-py3-none-any.whl
Size 2.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
8528b753baf9a32dd7a44f4e88912fe5c8771f7d921c813e1cbac35fc5a37996
BLAKE2b-256 checksum
How to use checksums
132810413555dd9cbd410c2762c8e6172ce9bd88c8c7997f7290f173969614dc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.49.0 This release

2 release files

0.48.4

2 release files

0.48.3

2 release files

0.48.2

2 release files

0.47.3

2 release files

0.47.1

2 release files

0.46.5

2 release files

0.46.4

2 release files

0.46.3

2 release files

0.46.2

2 release files

0.46.1

2 release files

0.45.3

2 release files

0.45.2

2 release files

0.45.1

2 release files

0.45.0

2 release files

0.44.2

2 release files

0.44.1

2 release files

0.43.8

2 release files

0.43.6

2 release files

0.43.4

2 release files

0.43.2

2 release files

0.43.1

2 release files

0.42.2

2 release files

0.41.1

2 release files

0.41.0

2 release files

0.40.4

2 release files

0.40.3

2 release files

0.40.2

2 release files

0.40.1

2 release files

0.40.0

2 release files

0.39.1

2 release files

0.38.5

2 release files

0.38.4

2 release files

0.38.3

2 release files

0.38.2

2 release files

0.36.0

2 release files

0.35.2

2 release files

0.34.2

2 release files

0.34.1

2 release files

0.33.3

2 release files

0.33.2

2 release files

0.33.1

2 release files

0.32.1

2 release files

0.32.0

2 release files

0.31.3

2 release files

0.31.2

2 release files

0.31.1

2 release files

0.30.1

2 release files

0.30.0

2 release files

0.29.1

2 release files

0.27.4

2 release files

0.27.3

2 release files

0.27.2

2 release files

0.27.1

2 release files

0.26.1

2 release files

0.26.0

2 release files

0.25.2

1 release file

0.25.1

1 release file

0.24.3

1 release file

0.24.2

1 release file

0.24.1

1 release file

0.24.0

1 release file

0.23.1

1 release file

0.23.0

1 release file

0.22.4

1 release file

0.22.2

1 release file

0.22.1

1 release file

0.22.0

1 release file

0.21.4

1 release file

0.21.3

1 release file

0.21.2

1 release file

0.21.1

1 release file

0.21.0

1 release file

0.20.4

1 release file

0.20.3

1 release file

0.20.2

1 release file

0.20.1

1 release file

0.20.0

1 release file

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