How do I change the plot size of a regplot in Seab

2019-02-18 09:12发布

问题:

Something similar to the fig.set_size_inches(18.5, 10.5) of matplotlib.

回答1:

You can declare fig, ax pair via plt.subplots() first, then set proper size on that figure, and ask sns.regplot to plot on that ax

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

# some artificial data
data = np.random.multivariate_normal([0,0], [[1,-0.5],[-0.5,1]], size=100)

# plot
sns.set_style('ticks')
fig, ax = plt.subplots()
fig.set_size_inches(18.5, 10.5)
sns.regplot(data[:,0], data[:,1], ax=ax)
sns.despine()



回答2:

Or a little bit shorter:

import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt

# some artificial data
data = np.random.multivariate_normal([0,0], [[1,-0.5],[-0.5,1]], size=100)

# plot
sns.set_style('ticks')

g = sns.regplot(data[:,0], data[:,1])
g.figure.set_size_inches(18.5, 10.5)
sns.despine()