ClusterDistributionExplorer
Violin or box plots of feature distributions grouped by cluster.
Shows how the values of the selected numeric features are distributed within each cluster, using one subplot per feature. This goes beyond the heatmap means: it reveals differences in spread, skewness, and outliers between clusters for each feature.
The cluster label column is added automatically from the converter report
and must not be included in the column selection. Noise points
(cluster -1) are shown as a separate "Noise" group with a neutral colour.
Select one or more numeric features to compare across clusters. For the most informative view, choose features that appear in the top distinctive features reported by the Clustering Profile.
Parameters
- plot_type : string, default=
violin - Type of plot used to display feature distributions within each cluster. 'violin' shows the full probability density shape alongside a box plot; 'box' shows quartiles, median, and outliers only.
Methods
get_results(self, exploration_path: str, options: Dict[str, Any]) -> Dict[str, Any]
ClusterDistributionExplorerLoad the saved distribution figure and return it for the frontend.
Parameters
- exploration_path : str
- Path to the JSON file saved by
save_notebook. - options : Dict[str, Any]
- Rendering options from the frontend (unused).
Returns
- Dict[str, Any]
- Dictionary with keys
"data"(JSON-serialised Plotly figure),"type"("plotly_json"), and"config"(empty dict).
launch_exploration(self, dataset: 'DashAIDataset', explorer_info: DashAI.back.dependencies.database.models.Explorer) -> Any
ClusterDistributionExplorerBuild violin or box plot subplots for each selected feature.
Parameters
- dataset : DashAIDataset
- Dataset with the selected feature columns and the cluster label column (injected by
prepare_dataset). - explorer_info : Explorer
- Explorer record with column descriptors and optional custom title.
Returns
- plotly.graph_objects.Figure
- A multi-subplot figure with one panel per selected feature.
prepare_dataset(self, loaded_dataset: 'DashAIDataset', columns: List[Dict[str, Any]]) -> 'DashAIDataset'
ClusterDistributionExplorerExtend column selection to include the cluster label column.
Parameters
- loaded_dataset : DashAIDataset
- The full dataset.
- columns : List[Dict[str, Any]]
- Explicitly selected column descriptors (numeric features only).
Returns
- DashAIDataset
- Dataset restricted to the selected feature columns plus the cluster label column.
save_notebook(self, notebook_info: DashAI.back.dependencies.database.models.Notebook, explorer_info: DashAI.back.dependencies.database.models.Explorer, save_path: 'Path', result: Any) -> str
ClusterDistributionExplorerSave the distribution figure to disk as a JSON file.
Parameters
- notebook_info : Notebook
- The notebook database record (unused).
- explorer_info : Explorer
- The explorer record used for filename generation.
- save_path : Path
- Directory where the file will be saved.
- result : Any
- The Plotly figure returned by
launch_exploration.
Returns
- str
- The path of the saved JSON file as a POSIX string.
get_credential(self, name: str)
ConfigObjectResolve a registered credential component by name.
Parameters
- name : str
- Credential component class name (e.g. "HuggingFaceCredential").
Returns
- BaseCredential
- An instance of the requested credential component.
get_metadata(cls) -> Dict[str, Any]
BaseExplorerGet metadata for the explorer, used by the DashAI frontend.
Returns
- Dict[str, Any]
- Dictionary containing display name, description, image preview path, category, icon, color, allowed semantic types, allowed dtypes, input cardinality constraints, and any optional capability flags declared by the explorer.
get_schema(cls) -> dict
ConfigObjectGenerates the component related Json Schema.
Returns
- dict
- Dictionary representing the Json Schema of the component.
set_context(self, context: Dict[str, Any]) -> None
BaseExplorerSet optional runtime context for explorers that need extra inputs.
validate_and_transform(self, raw_data: dict) -> dict
ConfigObjectIt takes the data given by the user to initialize the model and returns it with all the objects that the model needs to work.
Parameters
- raw_data : dict
- A dictionary with the data provided by the user to initialize the model.
Returns
- dict
- A validated dictionary with the necessary objects.
validate_columns(cls, explorer_info: DashAI.back.dependencies.database.models.Explorer, column_spec: Dict[str, Dict[str, str]]) -> bool
BaseExplorerValidate that the selected columns satisfy the explorer's constraints.
Parameters
- explorer_info : Explorer
- The database record for the explorer instance, including the selected columns.
- column_spec : Dict[str, Dict[str, str]]
- A mapping from column name to a dict with at least
"type"(semantic type name) and"dtype"(dtype string).
Returns
- bool
- True if all column constraints are satisfied, False otherwise.
validate_parameters(cls, params: Dict[str, Any]) -> bool
BaseExplorerValidate explorer parameters against the explorer's schema.
Parameters
- params : Dict[str, Any]
- The configuration parameters to validate.
Returns
- BaseExplorerSchema
- The validated and parsed schema instance. Subclasses that override this method may return a bool to indicate pass/fail without returning the model instance.