%pylab inline import matplotlib.pyplot as plt import pandas as pd df = pd.DataFrame.from_items([('A', [1, 2, 3]), ('B', [4, 5, 6])]) class side_by_side(): def __init__(self, *frames): self.frames = frames def _repr_html_(self): width = 100. / len(self.frames) s = "" for f in self.frames: s += "
%s
" % f._repr_html_() return s side_by_side(df, df)