pyvista.Renderer.set_color_cycler#
- Renderer.set_color_cycler(color_cycler) None [source]#
Set or reset this renderer’s color cycler.
This color cycler is iterated over by each sequential
add_mesh()
call to set the default color of the dataset being plotted.When setting, the value must be either a list of color-like objects, or a cycler of color-like objects. If the value passed is a single string, it must be one of:
'default'
- Use the default color cycler (matches matplotlib’s default)'matplotlib
- Dynamically get matplotlib’s current theme’s color cycler.'all'
- Cycle through all of the available colors inpyvista.plotting.colors.hexcolors
Setting to
None
will disable the use of the color cycler on this renderer.Note
If a mesh has scalar data, set
color=True
in the call toadd_mesh()
to color the mesh with the next color in the cycler. Otherwise the mesh’s scalars are used to color the mesh by default.Examples
Set the default color cycler to iterate through red, green, and blue.
>>> import pyvista as pv >>> pl = pv.Plotter() >>> pl.renderer.set_color_cycler(['red', 'green', 'blue']) >>> _ = pl.add_mesh(pv.Cone(center=(0, 0, 0))) # red >>> _ = pl.add_mesh(pv.Cube(center=(1, 0, 0))) # green >>> _ = pl.add_mesh(pv.Sphere(center=(1, 1, 0))) # blue >>> _ = pl.add_mesh(pv.Cylinder(center=(0, 1, 0))) # red again >>> pl.show()
Load a mesh with active scalars and split it into two separate meshes.
>>> mesh = pv.Wavelet() >>> mesh.active_scalars_name 'RTData'
>>> a = mesh.clip(invert=True) >>> b = mesh.clip(invert=False)
Enable color cycling and set
color=True
to force the meshes to be colored with the cycler’s colors.>>> pv.global_theme.color_cycler = 'default' >>> pl = pv.Plotter() >>> _ = pl.add_mesh(a, color=True) >>> _ = pl.add_mesh(b, color=True) >>> pl.show()