实验课程

THIS NAME

实验课程

当前位置: 首页 >> 实验课程 >> 正文

大数据可视化-基于Python的回归图的绘制

发布日期:2024-08-19    作者:邓春伟     来源:     点击:

基于Python的回归图的绘制

一、实验目的

1.掌握seaborn

2.回归图主要是基于 seaborn 库中的 regplot 函数进行绘制。

二、实验设备与器件

PC机、TempoAI平台

三、实验内容

seaborn.regplot(x, y, data=None, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=False, dropna=True, x_jitter=None, y_jitter=None, label=None, color=None, marker='o', scatter_kws=None, line_kws=None, ax=None)

%matplotlib inline
# 导入库
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

# 设置风格样式
sns.set(color_codes=True)
# 构建数据
# 载入example.csv
tips = pd.read_csv("/data/shixunfiles/56516317765e7b7e0b50d0f9d01f2d82_1609223779873.csv")

# 查看数据
print(tips)

# 绘制双变量的线性关系
sns.regplot(x="total_bill",y="tip",data=tips)
# 显示
plt.show()

 

 

IMG_256

# 在上述图形的基础上,加入对x轴分组数据的抖动
# x_jitter 表示沿轴随机分布,相对避免重叠
sns.regplot(x="size", y="total_bill",
            data=tips, x_jitter=.05)
# 显示
plt.show()

 

 

IMG_257

# 根据数据的情况,指定按x轴进行分组,只显示每一组数据的均值和置信区间
# x_estimator:将此函数应用于x的每个唯一值并绘制结果的估计值
sns.regplot(x="size", y="total_bill",
            data=tips,x_estimator=np.mean)
# 显示
plt.show()

 

 

IMG_258

In [4]:

# 使用log(x)拟合回归模型,进行模型预测
# logx为使用log(x)拟合
# truncate:默认情况下,绘制回归线以在绘制散点图后填充x轴限制。 如果truncate是True,它将改为受到数据本身限制的限制
sns.regplot(x="size", y="total_bill",
            data=tips,x_estimator=np.mean,
            logx=True, truncate=True)
plt.show()

 

 

IMG_259

In [5]:

%matplotlib inline

# 导入库
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 设置风格样式
sns.set(color_codes=True)
# 构建数据
np.random.seed(10)
mean, cov = [4, 7], [(1.5, .6), (.8, 1)]
x, y = np.random.multivariate_normal(mean, cov, 50).T


# 构建随机数据,绘制双变量的线性关系,使用70%的置信区间,该区间对应于估计的标准误差
# ci:回归估计的置信区间的大小。这将使用回归线周围的半透明带绘制
sns.regplot(x=x, y=y, color="g",ci=70)

# 显示
plt.show()
/usr/local/lib/python3.6/site-packages/ipykernel_launcher.py:14: RuntimeWarning: covariance is not positive-semidefinite.
  

 

 

IMG_260

In [6]:

# 将连续变量绘制成不连续的区域
x, y = pd.Series(x, name="x_var"), pd.Series(y, name="y_var")

# x_bins:将x变量加入离散区间,然后估计中心趋势和置信区间。使用此参数时,x_estimator的默认值为numpy.mean。
sns.regplot(x=x, y=y, x_bins=4)

# 显示
plt.show()

 

 

IMG_261

In [7]:

%matplotlib inline
# 导入库
import seaborn as sns
import matplotlib.pyplot as plt

# 设置风格样式
sns.set(color_codes=True)
# 构建数据
# 载入example2.csv
ans = pd.read_csv("/data/shixunfiles/db9ae053abe28259bf7d18e8d9ddc2e9_1609223779877.csv")

# 显示数据
print(ans)

# 拟合高阶多项式回归并进行模型预测
# scatter_kws:传递给plt.scatter和plt.plot的附加关键字参数
# order:如果order大于1,使用numpy.polyfit来估计多项式回归

 

 

IMG_262

至此,Python 的回归图的绘制结束。

 


 

 

上一条:大数据可视化-基于Pyhton的方格百分比图绘制 下一条:分布式数据库-Hive实验

关闭