Changes in version 0.6.2 (2026-09-01) - plot_biplot() no longer depends on factoextra. It's now a self-contained reimplementation of fviz_pca_biplot()/fviz_mca_biplot()'s geometry (individual points/arrows, variable arrows or category points, axis percentage labels, dashed origin lines, the r * 0.7 variable-arrow scaling rule, and the exact cos2/contribution formulas factoextra uses for prcomp/FactoMineR::MCA objects), verified to reproduce numerically identical coordinates. factoextra dropped from Suggests; ggrepel added to Imports (previously an indirect factoextra dependency, now used directly for repelled labels). Changes in version 0.6.1 - Standardized figure colors package-wide. theme_phynotype() now builds on ggplot2::theme_classic() with an Okabe-Ito colorblind-safe palette (matching the funcml package's theme_funcml()), and new scale_color_phynotype()/scale_fill_phynotype() discrete scales are applied to every plot with a categorical color/fill mapping (cluster embedding, consensus clusters, feature profiles, silhouette widths). Previously these fell back to ggplot2's default hue palette. - plot(ceteris_paribus) no longer uses its own ad hoc teal/purple colors (visually indistinguishable from the DALEX/ingredients package's ceteris-paribus plot style, despite no dependency on it) - it now uses the same blue/vermillion accent pair as the rest of the package. - plot_coassoc()'s co-association heatmap now uses a proper continuous viridis gradient instead of ggplot2's default blue gradient. - plot(lime_explanation)'s positive/negative bars now use a consistent green/vermillion pair instead of ggplot2's default hue palette. - The two independently hardcoded feature-importance/cluster-size bar colors are now sourced from the same shared accent constant. - README figures re-rendered to reflect the new palette. Changes in version 0.6.0 - Added plot_biplot(), a thin wrapper around factoextra::fviz_pca_biplot()/fviz_mca_biplot() for "pca" and "mca" embeddings. No FAMD or MDS equivalent, matching what factoextra itself provides. Three variants, all following factoextra's own documented examples: "cluster" (default, colored/shaped by cluster assignment), "cos2" (colored by quality of representation), and "label" (individuals shown as text instead of points). - Added theme_phynotype(), a single ggplot2 theme now used consistently across every plot function in the package (previously some used theme_minimal(), one used theme_bw(), and plot(ceteris_paribus) had its own ad hoc purple-tinted theme). - Fixed metacluster() so it can combine native mixed-data methods (kproto, kmm) with numeric-only (kmeans, pam, dbscan, gmm) or distance-based (hclust, agnes) methods on the same mixed-type dataset, by preparing per-method input instead of passing raw mixed data to every candidate. - Fixed validate.metacluster_fit() to encode mixed-type data before computing silhouette/Calinski-Harabasz/Davies-Bouldin, matching validate.cluster_fit(). - All numeric package results now round to 4 significant digits by default: validate()'s metrics/per-cluster tables, explore()'s feature summary/separation/prototype tables, centers()/prototypes(), feature_importance(), ceteris_paribus(), lime_explain(), and metacluster()'s selection/stability summaries. - First CRAN submission. Changes in version 0.0.9 - Validation tables now include metric scale and preferred direction metadata for silhouette, bootstrap ARI, Davies-Bouldin, total within-cluster sum of squares, and Calinski-Harabasz. - plot_validation() now facets metrics into individual panels instead of combining incompatible scales on one axis. - Added the initial cluster() workflow with kmeans, pam, hclust, agnes, dbscan, and gmm wrappers. - Added metacluster() with co-association consensus clustering. - Added validate(), explore(), predict(), and core plotting helpers. - Added package tests, documentation, and starter vignettes.