uvisbox.Modules.CurveBoxplot.curve_boxplot_vis ============================================== .. py:module:: uvisbox.Modules.CurveBoxplot.curve_boxplot_vis Module Contents --------------- .. py:data:: PYVISTA_AVAILABLE :value: True .. py:function:: visualize_curve_boxplot(mesh_data, boxplot_style=None, ax=None) Visualize curve boxplot from mesh data. This function creates a visualization of the curve boxplot using the mesh data output from the mesh pipeline. For 2D curves, it uses matplotlib. For 3D curves, it uses PyVista if available, otherwise falls back to matplotlib. :param mesh_data: Dictionary containing mesh data with the following keys: - 'percentile_meshes': dict of percentile meshes - 'median_curve': median curve - 'outliers': outlier curves - 'n_dims': dimensionality (2 or 3) :type mesh_data: dict :param boxplot_style: Configuration for the boxplot visualization including percentiles, colors, and median/outlier styling. If None, uses default configuration. :type boxplot_style: BoxplotStyleConfig, optional :param ax: Axes or plotter to use for visualization. Can be: - matplotlib.axes.Axes for 2D or 3D matplotlib rendering - pyvista.Plotter for 3D PyVista rendering - None: creates appropriate visualization object automatically :type ax: matplotlib.axes.Axes or pyvista.Plotter, optional :returns: **ax** -- The visualization object (matplotlib axes for 2D, PyVista plotter for 3D). :rtype: matplotlib.axes.Axes or pyvista.Plotter .. rubric:: Examples >>> import numpy as np >>> from uvisbox.Modules.CurveBoxplot.curve_boxplot_stats import curve_boxplot_summary_statistics >>> from uvisbox.Modules.CurveBoxplot.curve_boxplot_mesh import curve_boxplot_mesh >>> from uvisbox.Modules.CurveBoxplot.curve_boxplot_vis import visualize_curve_boxplot >>> from uvisbox.Core.CommonInterface import BoxplotStyleConfig >>> >>> # Generate synthetic curve data >>> curves = np.random.randn(50, 100, 2).cumsum(axis=1) >>> >>> # Process through pipeline >>> stats = curve_boxplot_summary_statistics(curves) >>> mesh_data = curve_boxplot_mesh(stats) >>> >>> # Visualize >>> ax = visualize_curve_boxplot(mesh_data) >>> >>> # Custom styling >>> style = BoxplotStyleConfig(percentiles=[25, 50, 75], show_outliers=True) >>> ax = visualize_curve_boxplot(mesh_data, boxplot_style=style)