plot_elbow#
- scikitplot.api.estimators.plot_elbow(clf, X, *, cluster_ranges=None, show_cluster_time=True, n_jobs=1, title='Elbow Curves', title_fontsize='large', text_fontsize='medium', **kwargs)[source]#
Plot the elbow curve for different values of K in KMeans clustering.
- Parameters:
- clfobject
A clusterer instance with
fit
,fit_predict
, andscore
methods, and ann_clusters
hyperparameter. Typically an instance ofsklearn.cluster.KMeans
.- Xarray-like of shape (n_samples, n_features)
The data to cluster, where
n_samples
is the number of samples andn_features
is the number of features.- cluster_rangeslist of int or None, optional, default=range(1, 12, 2)
List of values for
n_clusters
over which to plot the explained variances.- show_cluster_timebool, optional
Whether to include a plot of the time taken to cluster for each value of K.
- n_jobsint, optional, default=1
The number of jobs to run in parallel.
- titlestr, optional, default=”Elbow Plot”
The title of the generated plot.
- title_fontsizestr or int, optional, default=”large”
Font size of the title. Accepts Matplotlib font sizes, such as “small”, “medium”, “large”, or an integer value.
- text_fontsizestr or int, optional, default=”medium”
Font size of the text labels. Accepts Matplotlib font sizes, such as “small”, “medium”, “large”, or an integer value.
- **kwargs: dict
Generic keyword arguments.
- Returns:
- axmatplotlib.axes.Axes
The axes on which the plot was drawn.
- Other Parameters:
- axmatplotlib.axes.Axes, optional, default=None
The axis to plot the figure on. If None is passed in the current axes will be used (or generated if required).
- figmatplotlib.pyplot.figure, optional, default: None
The figure to plot the Visualizer on. If None is passed in the current plot will be used (or generated if required).
- figsizetuple, optional, default=None
Width, height in inches. Tuple denoting figure size of the plot e.g. (12, 5)
- nrowsint, optional, default=1
Number of rows in the subplot grid.
- ncolsint, optional, default=1
Number of columns in the subplot grid.
- plot_stylestr, optional, default=None
Check available styles with “plt.style.available”. Examples include: [‘ggplot’, ‘seaborn’, ‘bmh’, ‘classic’, ‘dark_background’, ‘fivethirtyeight’, ‘grayscale’, ‘seaborn-bright’, ‘seaborn-colorblind’, ‘seaborn-dark’, ‘seaborn-dark-palette’, ‘tableau-colorblind10’, ‘fast’].
Added in version 0.4.0.
- show_figbool, default=True
Show the plot.
- save_figbool, default=False
Save the plot.
- save_fig_filenamestr, optional, default=’’
Specify the path and filetype to save the plot. If nothing specified, the plot will be saved as png inside
result_images
under to the current working directory. Defaults to plot image named to usedfunc.__name__
.- verbosebool, optional
If True, prints debugging information.
Examples
>>> from sklearn.cluster import KMeans >>> from sklearn.datasets import load_iris as data_3_classes >>> import scikitplot as skplt >>> X, y = data_3_classes(return_X_y=True, as_frame=False) >>> kmeans = KMeans(random_state=0) >>> skplt.estimators.plot_elbow( >>> kmeans, >>> X, >>> cluster_ranges=range(1, 10), >>> );
(
Source code
,png
)