pandas.core.groupby.DataFrameGroupBy.boxplot¶
-
DataFrameGroupBy.
boxplot
(subplots=True, column=None, fontsize=None, rot=0, grid=True, ax=None, figsize=None, layout=None, sharex=False, sharey=True, **kwds)[source]¶ Make box plots from DataFrameGroupBy data.
- Parameters
- groupedGrouped DataFrame
- subplotsbool
False
- no subplots will be usedTrue
- create a subplot for each group
- columncolumn name or list of names, or vector
Can be any valid input to groupby
- fontsizeint or string
- rotlabel rotation angle
- gridSetting this to True will show the grid
- axMatplotlib axis object, default None
- figsizeA tuple (width, height) in inches
- layouttuple (optional)
(rows, columns) for the layout of the plot
- sharexbool, default False
Whether x-axes will be shared among subplots
New in version 0.23.1.
- shareybool, default True
Whether y-axes will be shared among subplots
New in version 0.23.1.
- `**kwds`Keyword Arguments
All other plotting keyword arguments to be passed to matplotlib’s boxplot function
- Returns
- dict of key/value = group key/DataFrame.boxplot return value
- or DataFrame.boxplot return value in case subplots=figures=False
Examples
>>> import itertools >>> tuples = [t for t in itertools.product(range(1000), range(4))] >>> index = pd.MultiIndex.from_tuples(tuples, names=['lvl0', 'lvl1']) >>> data = np.random.randn(len(index),4) >>> df = pd.DataFrame(data, columns=list('ABCD'), index=index) >>> >>> grouped = df.groupby(level='lvl1') >>> boxplot_frame_groupby(grouped) >>> >>> grouped = df.unstack(level='lvl1').groupby(level=0, axis=1) >>> boxplot_frame_groupby(grouped, subplots=False)