Note
Go to the end to download the full example code. or to run this example in your browser via Binder
Load and Plot from a File#
Read a dataset from a known file type.
We try to make loading a mesh as easy as possible - if your data is in one
of the many supported file formats, simply use pyvista.read()
to
load your spatially referenced dataset into a PyVista mesh object.
The following code block uses a built-in example file and displays an airplane mesh.
import pyvista as pv
from pyvista import examples
help(pv.read)
PyVista supports a wide variety of file formats. The supported file extensions are listed in an internal function:
The following code block uses a built-in example file, displays an airplane mesh and returns the camera’s position:
# Get a sample file
filename = examples.planefile
filename
Note the above filename, it’s a .ply
file - one of the many supported
formats in PyVista.
Use pv.read
to load the file as a mesh:
mesh = ...
cpos = mesh.plot()
The points from the mesh are directly accessible as a NumPy array:
mesh.points
The faces from the mesh are also directly accessible as a NumPy array:
mesh.faces.reshape(-1, 4)[:, 1:] # triangular faces
Loading other files types is just as easy! Simply pass your file path to the
pyvista.read()
function and that’s it!
Here are a few other examples - simply replace examples.download_*
in the
examples below with pyvista.read('path/to/you/file.ext')
Example STL file:
mesh = examples.download_cad_model()
cpos = [(107.0, 68.5, 204.0), (128.0, 86.5, 223.5), (0.45, 0.36, -0.8)]
mesh.plot(cpos=cpos)
Example OBJ file
mesh = examples.download_doorman()
mesh.plot(cpos="xy")
Example BYU file
mesh = examples.download_teapot()
mesh.plot(cpos=[-1, 2, -5], show_edges=True)
Example VTK file
mesh = examples.download_bunny_coarse()
cpos = [(0.2, 0.3, 0.9), (0, 0, 0), (0, 1, 0)]
mesh.plot(cpos=cpos, show_edges=True, color=True)
Exercise#
Read a file yourself with pyvista.read()
. If you have a supported file
format, use that! Otherwise, download this file:
pyvista/pyvista-tutorial
# (your code here)
# mesh = pv.read('path/to/file.vtk)