HistogramPlotExplorer
Explorer that renders an interactive histogram for a single column.
A histogram divides the value range of the selected column into adjacent bins and represents the number (or aggregated value) of observations falling into each bin as a bar height. It is the most direct way to visualise the frequency distribution of a numeric variable: the overall shape reveals whether the data are roughly symmetric, skewed, bimodal, or uniform, while the spread of the bars indicates the range and variability of the values.
Normalisation options allow the y-axis to be expressed as raw counts, percentages, probabilities, or probability densities, making it easy to compare distributions with different sample sizes on the same scale. The optional colour and pattern grouping parameters produce stacked or side-by-side histograms that compare frequency distributions across categorical subgroups.
Use this explorer as a first step in univariate data exploration or to verify the distributional assumptions of a model (e.g. checking normality of residuals).
Parameters
- nbins, default=
None - Number of bins to use for the histogram.
- histfunc : string, default=
count - Binning function used for this histogram trace.
- histnorm : string, default=
- Type of normalization used for this histogram trace.
- color_group, default=
None - Column name or index used to group colored points.
- pattern_group, default=
None - Column name or index used to group point patterns.
Methods
get_results(self, exploration_path: str, options: Dict[str, Any]) -> Dict[str, Any]
HistogramPlotExplorerLoad and return the saved histogram 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-serialized Plotly figure),"type"("plotly_json"), and"config"(empty dict).
launch_exploration(self, dataset: 'DashAIDataset', explorer_info: DashAI.back.dependencies.database.models.Explorer)
HistogramPlotExplorerGenerate a Plotly histogram for the selected column.
Parameters
- dataset : DashAIDataset
- Dataset containing the selected column and any grouping columns.
- explorer_info : Explorer
- Explorer record with column names and optional display name.
Returns
- plotly.graph_objects.Figure
- An interactive histogram figure.
prepare_dataset(self, loaded_dataset: 'DashAIDataset', columns: List[Dict[str, Any]]) -> 'DashAIDataset'
HistogramPlotExplorerExtend the column list to include color and pattern grouping columns.
Parameters
- loaded_dataset : DashAIDataset
- The full dataset being explored.
- columns : List[Dict[str, Any]]
- List of column descriptors already selected by the user.
Returns
- DashAIDataset
- Dataset slice containing all required columns, as returned by the parent
prepare_datasetimplementation.
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
HistogramPlotExplorerSave the histogram figure to a JSON file on disk.
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_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 dtypes, restricted dtypes, and input cardinality constraints.
get_schema(cls) -> dict
ConfigObjectGenerates the component related Json Schema.
Returns
- dict
- Dictionary representing the Json Schema of the component.
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 a
"type"key describing the column's data type.
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.