上述代码中存在distplot的迭代问题,请将其改成使用displot或者histplot,两种各自写一个代码,并且最大程度保留原代码的其他部分不更改
时间: 2024-03-26 09:40:16 浏览: 57
二元一次线性回归+F值检验(残差分析)
使用displot的代码如下所示:
```python
def draw_distribution_histogram_1(nums,
bins=20,
hist=True,
kde=True,
rug=False,
vertical=False,
norm_hist=False,
xlabel="",
ylabel="",
title="",
savepath=""):
sns.set() # 切换到sns的默认运行配置
# 绘制直方图和核密度图
sns.displot(data=nums,
bins=bins,
kde=kde,
rug=rug,
stat=norm_hist,
color="steelblue",
alpha=0.7,
linewidth=1.5,
vertical=vertical)
# 添加x轴和y轴标签
plt.xlabel(xlabel)
plt.ylabel(ylabel)
# 添加标题
plt.title(title)
# 调整图形布局
plt.tight_layout()
# 保存图形到文件
if savepath:
plt.savefig(savepath, dpi=300)
# 显示图形
plt.show()
```
使用histplot的代码如下所示:
```python
def draw_distribution_histogram_2(nums,
bins=20,
hist=True,
kde=True,
rug=False,
vertical=False,
norm_hist=False,
xlabel="",
ylabel="",
title="",
savepath=""):
sns.set() # 切换到sns的默认运行配置
# 绘制直方图和核密度图
sns.histplot(data=nums,
bins=bins,
kde=kde,
rug=rug,
stat=norm_hist,
color="steelblue",
alpha=0.7,
linewidth=1.5,
element="step" if hist else "poly",
fill=False if hist else True,
edgecolor=None if hist else "purple",
alpha_kde=0.7,
linewidth_kde=1.5,
vertical=vertical)
# 添加x轴和y轴标签
plt.xlabel(xlabel)
plt.ylabel(ylabel)
# 添加标题
plt.title(title)
# 调整图形布局
plt.tight_layout()
# 保存图形到文件
if savepath:
plt.savefig(savepath, dpi=300)
# 显示图形
plt.show()
```
这两种代码都是将distplot替换成了displot或histplot,其他部分基本保持不变。需要注意的是,使用histplot时需要根据hist参数的取值来选择element参数的取值,以确定直方图的类型。
阅读全文