Seaborn中具有子图的散点图

时间:2019-08-09 18:58:01

标签: python seaborn scatter-plot

我是python可视化的新手。我正在尝试使用以下代码并排绘制两个散点图,但不能。

此外,有人可以为我提供一些有关seaborn / matplotlib的很好的教程。我深入研究了他们的文档及其令人生畏的

plt.figure(figsize = (16, 12))
ax = plt.subplot(1,2,1)
sns.relplot(x="total_bill", y="tip", data=tips, ax= ax);
ax = plt.subplot(1,2,2)
sns.scatterplot(x="total_bill", y="tip", data=tips);

我得到两个地块,一个在另一个上。 第一个图的大小合适,但是下面的第二个图的大小却不如第一个,而且x轴的长度非常小

3 个答案:

答案 0 :(得分:2)

您没有正确指定ax参数。试试看:

fig, (ax1,ax2) = plt.subplots(1,2, figsize=(16,6))

ax1.set_title('Latitute')
sns.scatterplot(x='price', y='lat', data=df, ax=ax1)

ax2.set_title('Longitude')
sns.scatterplot(x='price', y='long', data=df, ax=ax2)

答案 1 :(得分:0)

#Somthing like this should work
import numpy as np
import matplotlib.pyplot as plt

x1 = [1, 2, 3, 4, 5]
x2 = [1, 2, 3, 4, 5]
y1 = [1, 8, 27, 36, 125]
y2 = [1, 4, 9, 16, 25]

fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(5, 3))
axes[0].plot(x1, y1)
axes[1].plot(x2, y2)
fig.tight_layout()
plt.show()

答案 2 :(得分:0)

您似乎遗漏了第二个ax参数。试试:

plt.figure(figsize = (16, 12))
ax = plt.subplot(1,2,1)
sns.relplot(x="total_bill", y="tip", data=tips, ax= ax);
ax = plt.subplot(1,2,2)
sns.scatterplot(x="total_bill", y="tip", data=tips, ax= ax);