python可视化学习(十七)密度图
#认识绘制密度图的函数#密度图是一种直方图和密度图的对比#大多数密度估计是和密度的估计,核计算是比较复杂了#通俗讲,纵坐标是相对用于不同类别的值#构造数据,满足正态分布data=np.random.rand(1000)#画一个简单的密度图sns.kdeplot(data);**sns.kdeplot()**> 函数功能>> 拟合并绘制单变量或双变量核密度估计值> 重要参数&
·
#认识绘制密度图的函数
#密度图是一种直方图和密度图的对比
#大多数密度估计是和密度的估计,核计算是比较复杂了
#通俗讲,纵坐标是相对用于不同类别的值
#构造数据,满足正态分布
data=np.random.rand(1000)
#画一个简单的密度图
sns.kdeplot(data);
**sns.kdeplot()**
> 函数功能
>> 拟合并绘制单变量或双变量核密度估计值
> 重要参数
>> data:数据集,可以只输入一个,也可以输入两个
>> shade:在密度曲线下方加阴影(如果数据是双变量时,填充轮廓)
>> vertical:控制密度轴向
>> bw:类似于直方图中的binwidth,用于确定核大小
>> kernel:核函数(双变量KDE只能使用高斯核)
>>> 核函数种类说明:
>>> gau:gaussian高斯核(常用)
>>> cos:cosine余弦
>>> biw:biweight 四次
>>> epa:Epanechnikov 抛物线
>>> tri:triangle三角
>>> triw:triweight 三次
#给核密度图添加一些简单的装饰
sns.kdeplot(data
,shade=True #填充曲线下阴影的控制参数
#,vertical=True
,color='r' #控制颜色
,alpha=0.8 #控制颜色的色彩饱和度
,linewidth=3
,linestyle='--'
);
plt.hist(data);
df = pd.read_csv("mpg_ggplot2.csv")
df.loc[df.cyl==4,'cty'].values
#筛选出气缸数为4的城市里程
c4 = df.loc[df.cyl==4,'cty'].values`在这里插入代码片`
#绘制图形
sns.kdeplot(c4
,shade=True
,color='r'
,alpha=0.3
,label='Cyl=4'
);
#提取绘图数据
c4 = df.loc[df.cyl==4,'cty'].values
c5 = df.loc[df.cyl==5,'cty'].values
c6 = df.loc[df.cyl==6,'cty'].values
c8 = df.loc[df.cyl==8,'cty'].values
#创建画布并设定画布尺寸
plt.figure(figsize=(12,8),dpi=60)
#绘制图形
sns.kdeplot(c4,shade=True,color='deeppink',alpha=0.6,label='Cyl = 4')
sns.kdeplot(c5,shade=True,color='green',alpha=0.6,label='Cyl = 5')
sns.kdeplot(c6,shade=True,color='blue',alpha=0.6,label='Cyl = 6')
sns.kdeplot(c8,shade=True,color='orange',alpha=0.6,label='Cyl = 8')
#添加装饰
plt.title('城市里程随气缸数变化密度图',fontsize=20)
plt.xlabel('城市里程(cty)',fontsize=18)
plt.xticks(fontsize=15)
plt.yticks(fontsize=15)
plt.legend(fontsize=13,loc=0);#loc=0,显示在空余部分
#源代码
#源代码
# Import Data
df = pd.read_csv("mpg_ggplot2.csv") #导入数据集
# Draw Plot
plt.figure(figsize=(12,8), dpi= 60) #创建画布并设定画布大小
sns.kdeplot(df.loc[df['cyl'] == 4, "cty"], shade=True, color="g", label="Cyl=4", alpha=.7) #绘制气缸数为4的密度曲线
sns.kdeplot(df.loc[df['cyl'] == 5, "cty"], shade=True, color="deeppink", label="Cyl=5", alpha=.7) #绘制气缸数为5的密度曲线
sns.kdeplot(df.loc[df['cyl'] == 6, "cty"], shade=True, color="dodgerblue", label="Cyl=6", alpha=.7) #绘制气缸数为6的密度曲线
sns.kdeplot(df.loc[df['cyl'] == 8, "cty"], shade=True, color="orange", label="Cyl=8", alpha=.7) #绘制气缸数为8的密度曲线
# Decoration
plt.title('Density Plot of City Mileage by n_Cylinders', fontsize=22) #添加标题
plt.legend() #添加图例
plt.show() #本地显示图形
更多推荐
已为社区贡献2条内容
所有评论(0)