Skip to content

This update brings some major changes to the widgets (the previous API for widgets is broken. Please see new API)

New Features

  • New Sphere and Spline widgets (see #383 and #401) with major overahul to allow support from many widgets in a single scene
  • New OBJ scene exporter (see #392)
  • New toolbar for the BackgroundPlotter for controlling the camera (see #351)
  • UniformGrid objects can now be cast to RectilinearGrid objects (see #381)

Bug Fixes

  • NaN camera position issue resolved (see #383)
  • Scalar mapping issues for uint8 arrays fixed (see #384)
  • Fix q-key for closing the BackgroundPlotter (see #388)
  • Properly grab screenshots when BackgroundPlotter closes (see #382)
  • Fix issue when trying to plot multiple sets of point labels
  • Add access to repeat option on the Texture class
  • new viewport parameter to control text location in BasePlotter.add_text (see #390)
  • Resolve some major Python 2.7 issues for backwards compatibility (see #393)
  • Ignore strange errors when automatically grabbing depth image
  • Fix issue with lines_from_points (see #394 and #399)
  • Fix issue where Plotter class couldn’t accept the title argument.
Assets 2

New Features

  • New depth mapping feature for the rendering window (see #369 and #368)
  • New layout options for subplotting (see #380). Many thanks to @marcomusy
  • Anti-aliasing features (see #365)
  • Background color and number of colors are now settable for the scalar bar (see #370)
  • New relaxation parameter for the PolyData.smooth filter (see #374)
  • Major overhaul of the widget tools to improve performance (see #376)
  • New shallow_copy and deep_copy methods (see #377)
  • Improve default options for texture mapping
  • Wrapped the vtkTexture class
  • Enable use of edl keyword argument for eye dome lighting in the .plot() function.
  • New shortcuts for the point_data_to_cell_data() and cell_data_to_point_data() filters as ptc() and ctp() respectively.

Bug Fixes

  • Minor improvements for supporting Panel (ref #268)
  • Fix BackgroundPlotter menu bar on some Linux platforms (see #371)
  • Much cleanup, typos, etc., fixed by @marcomusy in #380
  • Much PEP8 cleanup inside the library
Assets 2

@banesullivan banesullivan released this Aug 22, 2019 · 99 commits to master since this release

There was a serious bug with the plane widget that somehow made it in the last release. This patch release resolves that issue and adds support for MultiBlock datasets with the widgets.

Assets 2

@banesullivan banesullivan released this Aug 19, 2019 · 104 commits to master since this release

New Features

  • Add full support for widgets in the rendering scene! (See #360)
    • Box widget - Create a box in 3D space. Includes a convenience method for clipping meshes
    • Plane widget - Create an implicit plane in 3D space. Includes a convenience method for clipping and slicing meshes
    • Slider widget - Add a slider bar to the render window. Includes a convenience method for thresholding meshes
    • Line widget - Create and orient a line in 3D space.
  • Point picking (see #362)
    • Single point picking on meshes and in 3D space
    • Trace lines across meshes using a geodesic path
    • Trace lines through a scene by picking points on meshes or in 3D space
    • Trace out horizon surfaces
  • Wrap the vtkTable class (see #274 and the new pyvista.Table class)
  • Add a structured grid cylinder helper method (see pyvista.CylinderStructured) which works creates a pyvista.StructuredGrid mesh in the shape of a cylinder.
  • New .ribbon() filter for PolyData objects - create surfaces (“ribbons”) from lines
  • interpolate_befor_map is now set too True as default (see #363 and this example for details)

Bug Fixes

  • Resolve issues with the lines_from_points helper methods (see #357)
  • Fix an issue when fetching null points on datasets
Assets 2

Exciting New Features

  • Labeled scalar bars!!! 🎉 (See #348 and this example) Now arrays with strings categories can be color mapped
  • Ability to clip a mesh using the surface of another mesh (see #354 and this example)
  • Parallel projection (see #337)
  • New MCubes reader (.tri files)
  • New cell quality and gradient filters (see #354)
  • Implement the + operator to support all PyVista meshes

Bug Fixes

  • Subplotting borders fixed
  • Handle arrays with no name (see #306)
  • Fix the fly_to method
  • Typos and grammar fixed in the example gallery - huge thanks to @JasonTLin
  • Fixed issue with the + operator that appeared in v0.21.3
  • Clear the menu bar for the BackgroundPlotter when closing on Mac OS (see #350)
Assets 2

@banesullivan banesullivan released this Aug 1, 2019 · 142 commits to master since this release

This release is primarily full of bug fixes and general cleanup around the filters and plotting methods.

Bug Fixes

  • Fix points ordering issue with gridded datasets
  • Fix issues with overlapping colorers (see #319)
  • Fix rare bug when scalars are the wrong size
  • Handle panel runtime errors on import (see #322)
  • Fix smooth_shading issue for non-PolyData datasets
  • Fix subplot indexing issues (see #346)


  • Memory footprint is improved (see #338)
  • panel notebook rendering is now off by default
  • New downloadable examples!
  • Filters were overhauled into their own module and generalized across datasets (see #323)
  • Improved control over axes widgets (see #334 and #342)
  • Improvements to add_mesh and add_volume docstrings
  • Deprecate BasePlotter.plot (see #341)
  • Enable use of poly lines with PolyData (see #344)
  • Add more lighting controls (see #343)
Assets 2

@banesullivan banesullivan released this Jul 20, 2019 · 181 commits to master since this release

  • Fix 32bit Python on 64bit OS ID type issues (see #316)
  • BackgroundPlotter changes:
    • Window title (see #305)
    • Add callback support (see #304)
    • Fix closing issues (see #315)
    • Add offscreen support (see #309)
    • Fix window resizing issue (see #315)
  • Fix typos
  • Add null_value support for the .interpolate filter
  • Replace AppVeyor with Azure Pipelines for Windows testing (see #317)
  • Add more special array names to the exclusion list for active scalars (see #307)
  • Update docstring for .add_text to detail how return type can vary (see #312)
Assets 2

@banesullivan banesullivan released this Jul 11, 2019 · 195 commits to master since this release

This release is loaded with bug fixes and enhancements that weren't quite ready at v0.21.0

New Features

  • Added option to use a scalar array for opacity mapping or custom transfer functions (see #297)
  • Overhauled the .clip filter to no longer triangulate regions unaffected by the clipping plane (see
    pyvista/pyvista-support#13 and this discussion)
  • Add surface cell picking for visible cells only (see #281 and #277)
  • Use Scooby’s .Report() convention (see #284)
  • Improved point labels behavior and formatting (see #286)

Bug Fixes

  • Changed defaults for volume rendering to make sure it typically works on all OS and all GPUs
  • Fixed non-uniform subsetting issue with the .glyph filter (see #302)
  • Fixed installation issue on CentOS
  • Point labels can now be tracked by name when plotting
  • Fixed bug where the cell picking callback would be called after empty selection
  • Fixed issue where MultiBlock datasets weren’t wrapping properly
  • Fixed volume rendering of MultiBlock datasets
  • Fixed camera clipping planes bug when orbiting a scene
  • Fixed issue if passing texture=False to add_mesh
  • Fixed coloring issue with Box axes widget
  • Fixed issue when shading a dataset and passing an array by name
  • Fixed issue where parse_color would get tricked by RGBA tuples
  • Fixed BackgroundPlotter closing event bug (see #293)
  • Added default window title to rcParams
Assets 2

@banesullivan banesullivan released this Jun 30, 2019 · 228 commits to master since this release

New Features

Most Exciting

  • Volume Rendering (see #272 and #231) 🎉 🎆 - many thanks to @supersubscript!
  • Show selection interactively with enable_cell_picking (see #278)
  • Slice along line filter (see #267)
  • Default colormap is now viridis

Also Pretty Exciting

  • Compute arc lengths of poly lines and splines (see #252)
  • Enable subset glyphing (see #269)
  • Enable filters on composite datasets (see #270)
  • Major reorganization of internal modules to clean up the API (see #272)
  • PolyData.project_points_to_plane filter (see #276)
  • Nee dependency: scooby for pyvista.generate_report() to make bug reporting easier.
  • Support for colorcet and cmocean colormaps

Bug Fixes

  • Fix color mapping issue for uint8 arrays (see #266)
  • Fix bugs with the auto documentation
  • Fix create_grid if cell dimension is 1
  • Use a better default for add_text so that text stays in the corner (see #275)
  • Fix frog example (see #237)
  • Enhance clipping algorithm for UniformGrids
Assets 2

@banesullivan banesullivan released this Jun 19, 2019 · 255 commits to master since this release

This release has quite a few significant bug fixes and some useful new features inspired by user requests and contributions

New Features

  • New linked cameras feature for subletting (see #255)
  • Add new plot_over_line filter (see #250)
  • Clearing scalar arrays (see #232)
  • Add support for Splines (see #246)
  • More parametric geometries
  • Add method to clear textures: .clear_textures()
  • New internal class, PointSet to manage common attributes between point based datasets

Bug Fixes

  • Fix the frog example (see #237)
  • Fix bug with pyvista.Cone (see #249)
  • Fix bug where PolyData constructor did not always produce vertex cells (see #227)
  • Fix length calculation for geodesic path (see #261)
  • Other bug fixes with respect to the geodesic path filter
Assets 2
You can’t perform that action at this time.