DpfPlotter
#
- class ansys.dpf.core.plotter.DpfPlotter(**kwargs)#
DpfPlotter class. Can be used in order to plot results over a mesh.
The current DpfPlotter is a PyVista based object.
That means that PyVista must be installed, and that it supports kwargs as parameter (the argument must be supported by the installed PyVista version). More information about the available arguments are available at
pyvista.Plotter
.
Overview#
Add labels at nodal locations. |
|
Add points to the plot. |
|
Add lines to the plot. |
|
Add a plane to the plot. |
|
Add a mesh to plot. |
|
Add a streamline to the plotter. |
|
Add a field containing data to the plotter. |
|
Plot the figure built by the plotter object. |
Return a list of labels. |
Import detail#
from ansys.dpf.core.plotter import DpfPlotter
Property detail#
- property DpfPlotter.labels#
Return a list of labels.
- Returns:
List of Label(s). Each list member or member group will share same properties.
- Return type:
list
Method detail#
- DpfPlotter.add_node_labels(nodes: ansys.dpf.core.nodes.Nodes | List[ansys.dpf.core.nodes.Node] | List[int], meshed_region: ansys.dpf.core.meshed_region.MeshedRegion, labels: List[str] | None = None, **kwargs)#
Add labels at nodal locations.
- Parameters:
nodes – Nodes where the labels should be added.
meshed_region – MeshedRegion to plot.
labels – The labels to use. A node for which the label is not defined or None will show the scalar value of the currently active field at that node, or, if no field is active, its node ID.
kwargs – Keyword arguments controlling label properties. See
pyvista.Plotter.add_point_labels()
.
- DpfPlotter.add_points(points, field=None, **kwargs)#
Add points to the plot.
- DpfPlotter.add_line(points, field=None, **kwargs)#
Add lines to the plot.
- DpfPlotter.add_plane(plane, field=None, **kwargs)#
Add a plane to the plot.
- DpfPlotter.add_mesh(meshed_region, deform_by=None, scale_factor=1.0, **kwargs)#
Add a mesh to plot.
- Parameters:
meshed_region (MeshedRegion) – MeshedRegion to plot.
deform_by (Field, Result, Operator, optional) – Used to deform the plotted mesh. Must output a 3D vector field. Defaults to None.
scale_factor (float, optional) – Scaling factor to apply when warping the mesh. Defaults to 1.0.
**kwargs (optional) – Additional keyword arguments for the plotter. More information are available at
pyvista.plot()
.
Examples
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> model = dpf.Model(examples.find_multishells_rst()) >>> mesh = model.metadata.meshed_region >>> from ansys.dpf.core.plotter import DpfPlotter >>> pl = DpfPlotter() >>> pl.add_mesh(mesh)
- DpfPlotter.add_streamlines(streamlines, source=None, radius=0.1, **kwargs)#
Add a streamline to the plotter.
The current add_streamlines method adds streamline as a PyVista based object. For more information about arguments, see
pyvista.DataSetFilters.streamlines()
.- Parameters:
streamlines (helpers.streamlines.Streamlines) – Object containing computed streamlines data, computed using helpers.streamlines.compute_streamlines function.
source (helpers.streamlines.StreamlinesSource, optional) – Object containing computed streamines source data, computed using helpers.streamlines.compute_streamlines function.
**kwargs (optional) – Additional keyword arguments for the plotter. More information is available at
pyvista.plot()
. The “permissive” (boolean, default being True) can be used to avoid throwing if computed streamlines are empty. SeeExamples
section for more information.
Examples
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> from ansys.dpf.core.helpers.streamlines import compute_streamlines >>> # Get model and meshed region >>> files = examples.download_fluent_mixing_elbow_steady_state() >>> ds = dpf.DataSources() >>> ds.set_result_file_path(files["cas"][0], "cas") >>> ds.add_file_path(files["dat"][1], "dat") >>> model = dpf.Model(ds) >>> mesh = model.metadata.meshed_region >>> # Get velocity data >>> velocity_op = model.results.velocity() >>> fc = velocity_op.outputs.fields_container() >>> op = dpf.operators.averaging.to_nodal_fc(fields_container=fc) >>> field = op.outputs.fields_container()[0] >>> # Plot >>> from ansys.dpf.core.plotter import DpfPlotter >>> pl = DpfPlotter() >>> pl.add_mesh(meshed_region=mesh, opacity=0.15, color="g") >>> streamline_obj = compute_streamlines( ... meshed_region=mesh, ... field=field, ... source_center=(0.55, 0.55, 0.), ... n_points=10, ... source_radius=0.08, ... max_time=10.0 ... ) >>> pl.add_streamlines( ... streamlines=streamline_obj, ... radius=0.001, ... ) >>> pl.show_figure(show_axes=True)
- DpfPlotter.add_field(field, meshed_region=None, show_max=False, show_min=False, label_text_size=30, label_point_size=20, deform_by=None, scale_factor=1.0, **kwargs)#
Add a field containing data to the plotter.
A meshed_region to plot on can be added. If no
meshed_region
is specified, the field support will be used. Ensure that the field support is ameshed_region
.- Parameters:
field (Field) – Field data to plot
meshed_region (MeshedRegion, optional) –
MeshedRegion
to plot the field on.show_max (bool, optional) – Label the point with the maximum value.
show_min (bool, optional) – Label the point with the minimum value.
deform_by (Field, Result, Operator, optional) – Used to deform the plotted mesh. Must output a 3D vector field. Defaults to None.
scale_factor (float, optional) – Scaling factor to apply when warping the mesh. Defaults to 1.0.
**kwargs (optional) – Additional keyword arguments for the plotter. More information are available at
pyvista.plot()
.
Examples
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> model = dpf.Model(examples.find_multishells_rst()) >>> mesh = model.metadata.meshed_region >>> field = model.results.displacement().outputs.fields_container()[0] >>> from ansys.dpf.core.plotter import DpfPlotter >>> pl = DpfPlotter() >>> pl.add_field(field, mesh)
- DpfPlotter.show_figure(**kwargs)#
Plot the figure built by the plotter object.
- Parameters:
**kwargs (optional) – Additional keyword arguments for the plotter. More information are available at
pyvista.plot()
.
Examples
>>> from ansys.dpf import core as dpf >>> from ansys.dpf.core import examples >>> model = dpf.Model(examples.find_multishells_rst()) >>> mesh = model.metadata.meshed_region >>> field = model.results.displacement().outputs.fields_container()[0] >>> from ansys.dpf.core.plotter import DpfPlotter >>> pl = DpfPlotter() >>> pl.add_field(field, mesh) >>> pl.show_figure()