spateo.plotting.static.three_d_plot.three_dims_plots
#
Module Contents#
Functions#
|
What needs to be added to the visualization window. |
|
Visualize reconstructed 3D model. |
|
Multi-view visualization of reconstructed 3D model. |
|
Animated visualization of 3D reconstruction model. |
|
Use MoviePy to compose a new animation and play multiple animations together in the new animation. |
|
Using plotly, save a 3D plot where cells are drawn as points and colored by their cell type. |
|
Visualize gene expression in a 3D space. |
|
Visualize the exclusivity or overlap of multiple gene expression patterns in 3D space. |
|
Given a key in adata.obsm or adata.obs and optionally a column index, plot a 3D scatterplot where points |
- spateo.plotting.static.three_d_plot.three_dims_plots.wrap_to_plotter(plotter: pyvista.Plotter, model: pyvista.PolyData | pyvista.UnstructuredGrid | pyvista.MultiBlock, key: str | list = None, background: str = 'white', cpo: str | list = 'iso', colormap: str | list | None = None, ambient: float | list = 0.2, opacity: float | numpy.ndarray | list = 1.0, model_style: Literal[points, surface, wireframe] | list = 'surface', model_size: float | list = 3.0, show_legend: bool = True, legend_kwargs: dict | None = None, show_outline: bool = False, outline_kwargs: dict | None = None, text: str | None = None, text_kwargs: dict | None = None)[source]#
What needs to be added to the visualization window.
- Parameters:
- plotter
The plotting object to display pyvista/vtk model.
- model
A reconstructed model.
- key
The key under which are the labels.
- background
The background color of the window.
- cpo
Camera position of the active render window. Available
cpo
are:- Iterable containing position, focal_point, and view up.
E.g.: [(2.0, 5.0, 13.0), (0.0, 0.0, 0.0), (-0.7, -0.5, 0.3)].
- Iterable containing a view vector.
E.g.: [-1.0, 2.0, -5.0].
- A string containing the plane orthogonal to the view direction.
E.g.: 'xy', 'xz', 'yz', 'yx', 'zx', 'zy', 'iso'.
- colormap
Name of the Matplotlib colormap to use when mapping the scalars.
When the colormap is None, use {key}_rgba to map the scalars, otherwise use the colormap to map scalars.
- ambient
When lighting is enabled, this is the amount of light in the range of 0 to 1 (default 0.0) that reaches the actor when not directed at the light source emitted from the viewer.
- opacity
Opacity of the model.
If a single float value is given, it will be the global opacity of the model and uniformly applied everywhere, elif a numpy.ndarray with single float values is given, it will be the opacity of each point. - should be between 0 and 1.
A string can also be specified to map the scalars range to a predefined opacity transfer function (options include: ‘linear’, ‘linear_r’, ‘geom’, ‘geom_r’).
- model_style
Visualization style of the model. One of the following:
model_style = 'surface'
,model_style = 'wireframe'
,model_style = 'points'
.
- model_size
If
model_style = 'points'
, point size of any nodes in the dataset plotted.If
model_style = 'wireframe'
, thickness of lines.- show_legend
whether to add a legend to the plotter.
- legend_kwargs
A dictionary that will be pass to the
add_legend
function. By default, it is an empty dictionary and theadd_legend
function will use the{"legend_size": None, "legend_loc": None, "legend_size": None, "legend_loc": None, "title_font_size": None, "label_font_size": None, "font_family": "arial", "fmt": "%.2e", "n_labels": 5, "vertical": True}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- show_outline
whether to produce an outline of the full extent for the model.
- outline_kwargs
A dictionary that will be pass to the
add_outline
function.By default, it is an empty dictionary and the add_legend function will use the
{"outline_width": 5.0, "outline_color": "black", "show_labels": True, "font_size": 16, "font_color": "white", "font_family": "arial"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- text
The text to add the rendering.
- text_kwargs
A dictionary that will be pass to the
add_text
function.By default, it is an empty dictionary and the
add_legend
function will use the{ "font_family": "arial", "font_size": 12, "font_color": "black", "text_loc": "upper_left"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.
- spateo.plotting.static.three_d_plot.three_dims_plots.three_d_plot(model: pyvista.PolyData | pyvista.UnstructuredGrid | pyvista.MultiBlock, key: str | list = None, filename: str | None = None, jupyter: bool | Literal[panel, none, pythreejs, static, ipygany] = False, off_screen: bool = False, window_size: tuple = (512, 512), background: str = 'white', cpo: str | list = 'iso', colormap: str | list | None = None, ambient: float | list = 0.2, opacity: float | numpy.ndarray | list = 1.0, model_style: Literal[points, surface, wireframe] | list = 'surface', model_size: float | list = 3.0, show_legend: bool = True, legend_kwargs: dict | None = None, show_outline: bool = False, outline_kwargs: dict | None = None, text: str | None = None, text_kwargs: dict | None = None, view_up: tuple = (0.5, 0.5, 1), framerate: int = 24, plotter_filename: str | None = None)[source]#
Visualize reconstructed 3D model.
- Parameters:
- model
A reconstructed model.
- key
The key under which are the labels.
- filename
Filename of output file. Writer type is inferred from the extension of the filename.
Output an image file,please enter a filename ending with
'.png', '.tif', '.tiff', '.bmp', '.jpeg', '.jpg', '.svg', '.eps', '.ps', '.pdf', '.tex'
.Output a gif file, please enter a filename ending with
.gif
.Output a mp4 file, please enter a filename ending with
.mp4
.
- jupyter
Whether to plot in jupyter notebook. Available
jupyter
are:'none'
- Do not display in the notebook.'pythreejs'
- Show a pythreejs widget'static'
- Display a static figure.'ipygany'
- Show an ipygany widget'panel'
- Show a panel widget.
- off_screen
Renders off-screen when True. Useful for automated screenshots.
- window_size
Window size in pixels. The default window_size is
[512, 512]
.- background
The background color of the window.
- cpo
Camera position of the active render window. Available
cpo
are:- Iterable containing position, focal_point, and view up.
E.g.: [(2.0, 5.0, 13.0), (0.0, 0.0, 0.0), (-0.7, -0.5, 0.3)].
- Iterable containing a view vector.
E.g.: [-1.0, 2.0, -5.0].
- A string containing the plane orthogonal to the view direction.
E.g.: 'xy', 'xz', 'yz', 'yx', 'zx', 'zy', 'iso'.
- colormap
Name of the Matplotlib colormap to use when mapping the scalars.
When the colormap is None, use {key}_rgba to map the scalars, otherwise use the colormap to map scalars.
- ambient
When lighting is enabled, this is the amount of light in the range of 0 to 1 (default 0.0) that reaches the actor when not directed at the light source emitted from the viewer.
- opacity
Opacity of the model.
If a single float value is given, it will be the global opacity of the model and uniformly applied everywhere, elif a numpy.ndarray with single float values is given, it will be the opacity of each point. - should be between 0 and 1.
A string can also be specified to map the scalars range to a predefined opacity transfer function (options include: ‘linear’, ‘linear_r’, ‘geom’, ‘geom_r’).
- model_style
Visualization style of the model. One of the following:
model_style = 'surface'
,model_style = 'wireframe'
,model_style = 'points'
.
- model_size
If
model_style = 'points'
, point size of any nodes in the dataset plotted.If
model_style = 'wireframe'
, thickness of lines.- show_legend
whether to add a legend to the plotter.
- legend_kwargs
A dictionary that will be pass to the
add_legend
function. By default, it is an empty dictionary and theadd_legend
function will use the{"legend_size": None, "legend_loc": None, "legend_size": None, "legend_loc": None, "title_font_size": None, "label_font_size": None, "font_family": "arial", "fmt": "%.2e", "n_labels": 5, "vertical": True}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- show_outline
whether to produce an outline of the full extent for the model.
- outline_kwargs
A dictionary that will be pass to the
add_outline
function.By default, it is an empty dictionary and the add_legend function will use the
{"outline_width": 5.0, "outline_color": "black", "show_labels": True, "font_size": 16, "font_color": "white", "font_family": "arial"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- text
The text to add the rendering.
- text_kwargs
A dictionary that will be pass to the
add_text
function.By default, it is an empty dictionary and the
add_legend
function will use the{ "font_family": "arial", "font_size": 12, "font_color": "black", "text_loc": "upper_left"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- view_up
The normal to the orbital plane. Only available when filename ending with
.mp4
or.gif
.- framerate
Frames per second. Only available when filename ending with
.mp4
or.gif
.- plotter_filename
- The filename of the file where the plotter is saved.
Writer type is inferred from the extension of the filename.
Output a gltf file, please enter a filename ending with
.gltf
.Output a html file, please enter a filename ending with
.html
.Output an obj file, please enter a filename ending with
.obj
.Output a vtkjs file, please enter a filename without format.
- Returns:
- List of camera position, focal point, and view up.
Returned only if filename is None or filename ending with
'.png', '.tif', '.tiff', '.bmp', '.jpeg', '.jpg', '.svg', '.eps', '.ps', '.pdf', '.tex'
.- img: Numpy array of the last image.
Returned only if filename is None or filename ending with
'.png', '.tif', '.tiff', '.bmp', '.jpeg', '.jpg', '.svg', '.eps', '.ps', '.pdf', '.tex'
.
- Return type:
cpo
- spateo.plotting.static.three_d_plot.three_dims_plots.three_d_multi_plot(model: pyvista.PolyData | pyvista.UnstructuredGrid | pyvista.MultiBlock, key: str | list = None, filename: str | None = None, jupyter: bool | Literal[panel, none, pythreejs, static, ipygany] = False, off_screen: bool = False, shape: str | list | tuple = None, window_size: tuple | None = None, background: str = 'white', cpo: str | list = 'iso', colormap: str | list | None = None, ambient: float | list = 0.2, opacity: float | numpy.ndarray | list = 1.0, model_style: Literal[points, surface, wireframe] | list = 'surface', model_size: float | list = 3.0, show_legend: bool = True, legend_kwargs: dict | None = None, show_outline: bool = False, outline_kwargs: dict | None = None, text: str | list = None, text_kwargs: dict | None = None, view_up: tuple = (0.5, 0.5, 1), framerate: int = 24, plotter_filename: str | None = None)[source]#
Multi-view visualization of reconstructed 3D model. If you want to draw a legend in each sub-window, please ensure that the key names used in each legend are different.
- Parameters:
- model
A MultiBlock of reconstructed models or a reconstructed model.
- key
The key under which are the labels.
- filename
Filename of output file. Writer type is inferred from the extension of the filename.
Output an image file,please enter a filename ending with
'.png', '.tif', '.tiff', '.bmp', '.jpeg', '.jpg', '.svg', '.eps', '.ps', '.pdf', '.tex'
.Output a gif file, please enter a filename ending with
.gif
.Output a mp4 file, please enter a filename ending with
.mp4
.
- jupyter
Whether to plot in jupyter notebook. Available
jupyter
are:'none'
- Do not display in the notebook.'pythreejs'
- Show a pythreejs widget'static'
- Display a static figure.'ipygany'
- Show an ipygany widget'panel'
- Show a panel widget.
- off_screen
Renders off-screen when True. Useful for automated screenshots.
- shape
Number of sub-render windows inside the main window. By default, there is only one render window.
- window_size
Window size in pixels. The default window_size is
[512, 512]
.- background
The background color of the window.
- cpo
Camera position of the active render window. Available
cpo
are:- Iterable containing position, focal_point, and view up.
E.g.: [(2.0, 5.0, 13.0), (0.0, 0.0, 0.0), (-0.7, -0.5, 0.3)].
- Iterable containing a view vector.
E.g.: [-1.0, 2.0, -5.0].
- A string containing the plane orthogonal to the view direction.
E.g.: 'xy', 'xz', 'yz', 'yx', 'zx', 'zy', 'iso'.
- colormap
Name of the Matplotlib colormap to use when mapping the scalars.
When the colormap is None, use {key}_rgba to map the scalars, otherwise use the colormap to map scalars.
- ambient
When lighting is enabled, this is the amount of light in the range of 0 to 1 (default 0.0) that reaches the actor when not directed at the light source emitted from the viewer.
- opacity
Opacity of the model.
If a single float value is given, it will be the global opacity of the model and uniformly applied everywhere, elif a numpy.ndarray with single float values is given, it will be the opacity of each point. - should be between 0 and 1.
A string can also be specified to map the scalars range to a predefined opacity transfer function (options include: ‘linear’, ‘linear_r’, ‘geom’, ‘geom_r’).
- model_style
Visualization style of the model. One of the following:
model_style = 'surface'
,model_style = 'wireframe'
,model_style = 'points'
.
- model_size
If
model_style = 'points'
, point size of any nodes in the dataset plotted.If
model_style = 'wireframe'
, thickness of lines.- show_legend
whether to add a legend to the plotter.
- legend_kwargs
A dictionary that will be pass to the
add_legend
function. By default, it is an empty dictionary and theadd_legend
function will use the{"legend_size": None, "legend_loc": None, "legend_size": None, "legend_loc": None, "title_font_size": None, "label_font_size": None, "font_family": "arial", "fmt": "%.2e", "n_labels": 5, "vertical": True}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- show_outline
whether to produce an outline of the full extent for the model.
- outline_kwargs
A dictionary that will be pass to the
add_outline
function.By default, it is an empty dictionary and the add_legend function will use the
{"outline_width": 5.0, "outline_color": "black", "show_labels": True, "font_size": 16, "font_color": "white", "font_family": "arial"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- text
The text to add the rendering.
- text_kwargs
A dictionary that will be pass to the
add_text
function.By default, it is an empty dictionary and the
add_legend
function will use the{ "font_family": "arial", "font_size": 12, "font_color": "black", "text_loc": "upper_left"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- view_up
The normal to the orbital plane. Only available when filename ending with
.mp4
or.gif
.- framerate
Frames per second. Only available when filename ending with
.mp4
or.gif
.- plotter_filename
- The filename of the file where the plotter is saved.
Writer type is inferred from the extension of the filename.
Output a gltf file, please enter a filename ending with
.gltf
.Output a html file, please enter a filename ending with
.html
.Output an obj file, please enter a filename ending with
.obj
.Output a vtkjs file, please enter a filename without format.
- spateo.plotting.static.three_d_plot.three_dims_plots.three_d_animate(models: Union[List[PolyData or UnstructuredGrid], pyvista.MultiBlock], stable_model: pyvista.PolyData | pyvista.UnstructuredGrid | pyvista.MultiBlock | None = None, stable_kwargs: dict | None = None, key: str | None = None, filename: str = 'animate.mp4', jupyter: bool | Literal[panel, none, pythreejs, static, ipygany] = False, off_screen: bool = False, window_size: tuple = (512, 512), background: str = 'white', cpo: str | list = 'iso', colormap: str | list | None = None, ambient: float | list = 0.2, opacity: float | numpy.ndarray | list = 1.0, model_style: Literal[points, surface, wireframe] | list = 'surface', model_size: float | list = 3.0, show_legend: bool = True, legend_kwargs: dict | None = None, show_outline: bool = False, outline_kwargs: dict | None = None, text: str | None = None, text_kwargs: dict | None = None, framerate: int = 24, plotter_filename: str | None = None)[source]#
Animated visualization of 3D reconstruction model.
- Parameters:
- models
A List of reconstructed models or a MultiBlock.
- stable_model
The model that do not change with time in animation.
- stable_kwargs
Parameters for plotting stable model. Available
stable_kwargs
are:'key'
'ambient'
'opacity'
'model_style'
'model_size'
'background'
'show_legend'
'legend_kwargs'
'show_outline'
'outline_kwargs'
'text'
'text_kwargs'
- key
The key under which are the labels.
- filename
Filename of output file. Writer type is inferred from the extension of the filename.
Output a gif file, please enter a filename ending with
.gif
.Output a mp4 file, please enter a filename ending with
.mp4
.
- jupyter
Whether to plot in jupyter notebook. Available
jupyter
are:'none'
- Do not display in the notebook.'pythreejs'
- Show a pythreejs widget'static'
- Display a static figure.'ipygany'
- Show an ipygany widget'panel'
- Show a panel widget.
- off_screen
Renders off-screen when True. Useful for automated screenshots.
- window_size
Window size in pixels. The default window_size is
[512, 512]
.- background
The background color of the window.
- cpo
Camera position of the active render window. Available
cpo
are:- Iterable containing position, focal_point, and view up.
E.g.: [(2.0, 5.0, 13.0), (0.0, 0.0, 0.0), (-0.7, -0.5, 0.3)].
- Iterable containing a view vector.
E.g.: [-1.0, 2.0, -5.0].
- A string containing the plane orthogonal to the view direction.
E.g.: 'xy', 'xz', 'yz', 'yx', 'zx', 'zy', 'iso'.
- colormap
Name of the Matplotlib colormap to use when mapping the scalars.
When the colormap is None, use {key}_rgba to map the scalars, otherwise use the colormap to map scalars.
- ambient
When lighting is enabled, this is the amount of light in the range of 0 to 1 (default 0.0) that reaches the actor when not directed at the light source emitted from the viewer.
- opacity
Opacity of the model.
If a single float value is given, it will be the global opacity of the model and uniformly applied everywhere, elif a numpy.ndarray with single float values is given, it will be the opacity of each point. - should be between 0 and 1.
A string can also be specified to map the scalars range to a predefined opacity transfer function (options include: ‘linear’, ‘linear_r’, ‘geom’, ‘geom_r’).
- model_style
Visualization style of the model. One of the following:
model_style = 'surface'
,model_style = 'wireframe'
,model_style = 'points'
.
- model_size
If
model_style = 'points'
, point size of any nodes in the dataset plotted.If
model_style = 'wireframe'
, thickness of lines.- show_legend
whether to add a legend to the plotter.
- legend_kwargs
A dictionary that will be pass to the
add_legend
function. By default, it is an empty dictionary and theadd_legend
function will use the{"legend_size": None, "legend_loc": None, "legend_size": None, "legend_loc": None, "title_font_size": None, "label_font_size": None, "font_family": "arial", "fmt": "%.2e", "n_labels": 5, "vertical": True}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- show_outline
whether to produce an outline of the full extent for the model.
- outline_kwargs
A dictionary that will be pass to the
add_outline
function.By default, it is an empty dictionary and the add_legend function will use the
{"outline_width": 5.0, "outline_color": "black", "show_labels": True, "font_size": 16, "font_color": "white", "font_family": "arial"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- text
The text to add the rendering.
- text_kwargs
A dictionary that will be pass to the
add_text
function.By default, it is an empty dictionary and the
add_legend
function will use the{ "font_family": "arial", "font_size": 12, "font_color": "black", "text_loc": "upper_left"}
as its parameters. Otherwise, you can provide a dictionary that properly modify those keys according to your needs.- framerate
Frames per second. Only available when filename ending with
.mp4
or.gif
.- plotter_filename
- The filename of the file where the plotter is saved.
Writer type is inferred from the extension of the filename.
Output a gltf file, please enter a filename ending with
.gltf
.Output a html file, please enter a filename ending with
.html
.Output an obj file, please enter a filename ending with
.obj
.Output a vtkjs file, please enter a filename without format.
- spateo.plotting.static.three_d_plot.three_dims_plots.merge_animations(mp4_files: list | None = None, mp4_folder: list | None = None, filename: str = 'merged_animation.mp4')[source]#
Use MoviePy to compose a new animation and play multiple animations together in the new animation.
- Parameters:
- mp4_files
A list containing absolute paths to mp4 files that need to be played together.
- mp4_folder
Absolute path to the folder containing all mp4 files that need to be played together. If
mp4_files
is provided,mp4_folder
cannot also be provided.- filename
Absolute path to save the newly composed animation.
Examples
st.pl.merge_animations(mp4_files=[“animation1.mp4”, “animation2.mp4”], filename=f”merged_animation.mp4”)
- spateo.plotting.static.three_d_plot.three_dims_plots.quick_plot_3D_celltypes(adata: anndata.AnnData, save_path: str, colors: list | None = None, coords_key: str = 'spatial', group_key: str = 'celltype', opacity: float = 1.0, title: str | None = None, ct_subset: list | None = None)[source]#
Using plotly, save a 3D plot where cells are drawn as points and colored by their cell type.
- Parameters:
- adata
AnnData object containing spatial coordinates and cell type labels
- save_path
Path to save the plot
- colors
Optional, used to specify colors for each cell type, given as a list that is at least as long as the set of cell types (in the AnnData object if all cell types are used, and in “ct_subset” if “ct_subset” is given). If None, a default color palette will be used.
- coords_key
Key in adata.obsm where spatial coordinates are stored
- group_key
Key in adata.obs where cell type labels are stored
- opacity
Sets only the transparency of the “Other” labeled points. Default is 1.0 (fully opaque).
- title
Optional, can be used to provide a title for the plot
- ct_subset
Optional, used to specify cell types of interest. If given, only cells with these types will be plotted, and other cells will be labeled “Other”. If None, all cell types will be plotted.
- spateo.plotting.static.three_d_plot.three_dims_plots.plot_expression_3D(adata: anndata.AnnData, save_path: str, gene: str, coords_key: str = 'spatial', group_key: str | None = None, ct_subset: list | None = None, pcutoff: float | None = 99.7, zero_opacity: float = 1.0, size: int = 2)[source]#
Visualize gene expression in a 3D space.
- Parameters:
- adata
AnnData object containing spatial coordinates and cell type labels
- save_path
Path to save the plot
- gene
Will plot expression pattern of this gene
- coords_key
Key in adata.obsm where spatial coordinates are stored
- group_key
Optional key for grouping in adata.obs, but needed if “ct_subset” is provided
- ct_subset
Optional list of cell types to include in the plot. If None, all cell types will be included.
- pcutoff
Percentile cutoff for gene expression. Default is 99.7, which will set the max value plotted to the 99.7th percentile of gene expression values.
- zero_opacity
Opacity of points with zero expression. Between 0.0 and 1.0. Default is 1.0.
- size
Size of the points in the plot. Defaults to 2.
- spateo.plotting.static.three_d_plot.three_dims_plots.plot_multiple_genes_3D(adata: anndata.AnnData, genes: list, save_path: str, colors: list | None = None, coords_key: str = 'spatial', group_key: str | None = None, ct_subset: list | None = None, size: int = 2)[source]#
Visualize the exclusivity or overlap of multiple gene expression patterns in 3D space.
- Parameters:
- adata
An AnnData object containing gene expression data.
- genes
List of genes to visualize (e.g., [“gene1”, “gene2”, “gene3”]).
- save_path
Path to save the figure to (will save as HTML file).
- colors
Optional, list of colors to use for each gene. If None, will use a default Spateo color palette. Must be at least the same length as “genes”, plus one.
- coords_key
Key for spatial coordinates in adata.obsm.
- group_key
Optional key for grouping in adata.obs, but needed if “ct_subset” is provided.
- ct_subset
Optional list of cell types to include in the plot. If None, all cell types will be included.
- size
Size of the points in the plot. Defaults to 2.
- spateo.plotting.static.three_d_plot.three_dims_plots.visualize_3D_increasing_direction_gradient(adata: anndata.AnnData, save_path: str, color_key: str = 'spatial', coord_key: str = 'spatial', coord_column: int = 0, cmap: str = 'viridis', center: float = 0.5, opacity: float = 1.0, title: str | None = None)[source]#
Given a key in adata.obsm or adata.obs and optionally a column index, plot a 3D scatterplot where points are colored according to increasing value in the specified column (typically, a coordinate axis, e.g. the y-axis).
- Parameters:
- adata
AnnData object containing all required information
- save_path
Save the figure as an HTML file to this path
- color_key
Key in adata.obs or adata.obsm containing numerical information that will be used to color the cells with gradient. Defaults to “spatial” (the default assumption also for the key in .obsm containing spatial coordinates).
- coord_key
Key in adata.obsm specifying the coordinates of each point in 3D space. Defaults to “spatial”.
- coord_column
Column index to use for plotting
- cmap
Colormap to use for plotting
- center
Coordinates will be normalized to [0, 1] and centered around this value. Defaults to 0.5. Larger values will result in more points being colored in the upper half of the colormap, and vice versa.
- opacity
Transparency of the points
- title
Optional, can be used to provide a title for the plot