How to plot non-square Seaborn jointplot or JointGrid
For those who use Seaborn into a Jupyter Notebook, I suggest calling set_figwidht()
and set_figheight()
just after the sns.jointplot()
command.
my_plot=sns.jointplot(x="K",y="errori",data=risultati , kind="scatter")
my_plot.fig.set_figwidth(13)
Jupyter Example
Stumbled upon this question looking for the answer myself. Having figured it out I thought I'd post the solution. As the jointplot
code seems quite insistent on having the figure square I don't know if this is considered bad practice, but anyhow...
If we look through the jointplot
code and follow it into JointGrid
, the size
parameter to jointplot
(and equally JointGrid
) is used in the following expression:
f = plt.figure(figsize=(size, size))
# ... later on
self.fig = f
So to get a non-square JointGrid
plot, simply run:
grid = sns.jointplot(...)
grid.fig.set_figwidth(6)
grid.fig.set_figheight(4)
grid.savefig("filename.png", dpi=300)
for a 6x4 figure.