如何将9张sns.displot()张图片合并为一张图片?
How Can I merge 9 sns.displot() pictures into 1 picture?
我想使用 sns.displot()
绘制 9 个特征的分布。而我想将这9张图片合并为1张图片,以便清晰显示。我尝试使用
name = ['active_users','download','hot_songs','like','pre_plays','rate','sum_initial',
'w_rate','week_mean']
for i in range(9):
ax = plt.subplot(3,3,i+1)
plt.axis('on')
ax.set_title(name[i])
ax.plot(sns.distplot(df[name[i]]))
在此代码中,name
是列的名称,也是我要显示的功能。我会得到这个错误 TypeError: float() argument must be a string or a number
。我不知道我的想法对不对。有人可以帮助我吗?
Matplotlib 的绘图命令 ax.plot()
需要用实际数据调用,而不是用另一个绘图命令创建的轴。 ax.plot(sns.distplot(df[name[i]]))
因此没有意义。
您可以使用 sns.distplot(df[name[i]], ax=ax)
将 seaborn 分布图绘制到指定轴 ax
。
我想使用 sns.displot()
绘制 9 个特征的分布。而我想将这9张图片合并为1张图片,以便清晰显示。我尝试使用
name = ['active_users','download','hot_songs','like','pre_plays','rate','sum_initial',
'w_rate','week_mean']
for i in range(9):
ax = plt.subplot(3,3,i+1)
plt.axis('on')
ax.set_title(name[i])
ax.plot(sns.distplot(df[name[i]]))
在此代码中,name
是列的名称,也是我要显示的功能。我会得到这个错误 TypeError: float() argument must be a string or a number
。我不知道我的想法对不对。有人可以帮助我吗?
Matplotlib 的绘图命令 ax.plot()
需要用实际数据调用,而不是用另一个绘图命令创建的轴。 ax.plot(sns.distplot(df[name[i]]))
因此没有意义。
您可以使用 sns.distplot(df[name[i]], ax=ax)
将 seaborn 分布图绘制到指定轴 ax
。