import pandas as pd
import matplotlib.pyplot as plt 
import matplotlib as m

print 'Matplotlib version:', m.__version__
Matplotlib version: 1.4.2
print 'Pandas version:', pd.__version__
Pandas version: 0.15.1

plt.style.use('ggplot')
m.rc("text.latex",preamble=r"\usepackage{cmbright}") 
m.rcParams['font.size'] = 20               ###<--- This line causes trouble.

df is a pandas dataframe

1) it messes up the following:

df.boxplot("column name",by="splitcol")

The heading and subheading overlap.

regards

Comment From: jreback

you can pass fontsize=.... to override this, or override the defaults by changing the default matplotlib parms.

This looks out of scope for pandas. @TomAugspurger ?

Comment From: sorenwacker

m.rcParams['font.size'] = 20 changes the default matplotlib parameters, doesn't it?

Comment From: jorisvandenbossche

@teramind yes, indeed. But you can always change that on a plot-per-plot basis. I think the pandas plots should look good for the default matplotlib settings, and we cannot do good for every different setting at the same time. So I think, in this case, you will have to manually change the spacing or font size.

(But if you find some spacing that looks good for both, we could certainly consider it)

Comment From: TomAugspurger

Yeah, non-overlapping labels is a super hard problem that matplotlib does pretty well at on it's own.

@teramind you can close this issue if you think that passing fontsize=... in the call to boxplot or changing the rcParams helps. pandas doesn't have much to do here.

Comment From: jorisvandenbossche

Closing as of scope for pandas