动手学数据分析之数据可视化4

动手学数据分析之数据可视化

数据可视化

# 1.导入所需包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# 2.导入文件
text = pd.read_csv(r'result.csv')
text.head()   # 查看文件

# 3.可视化展示
## 3.1泰坦尼克号数据集中男女中生存人数分布情况
### 法一
import matplotlib.pyplot as plt
text.groupby(['Sex','Survived'])['Survived'].count().unstack().plot.bar()  #以性别分组,分别统计各自死亡与幸存人数
plt.title('survived_count')
plt.show()
### 法二
import seaborn as sns
sns.countplot(x="Sex", hue="Survived", data=text)
plt.title('survived_count')
plt.show()

在这里插入图片描述

## 3.2 可视化展示泰坦尼克号数据集中男女中生存人与死亡人数的比例图
import matplotlib.pyplot as plt
text.groupby(['Sex','Survived'])['Survived'].count().unstack().plot.bar(stacked=True)  # 多加了一组堆叠
plt.title('survived_count')
plt.show()

在这里插入图片描述

## 3.3可视化展示泰坦尼克号数据集中不同票价的人生存和死亡人数分布情况
# 计算不同票价中生存与死亡人数 1表示生存,0表示死亡
plt.figure(figsize=(20,8))
text.groupby(['Fare'])['Survived'].value_counts().sort_values(ascending=False).plot(grid=True) # 排序,绘制网格
plt.legend()
plt.title('Fare_Survived')
plt.show()

在这里插入图片描述

## 3.4可视化展示泰坦尼克号数据集中不同仓位等级的人年龄分布情况
#  kind参数——'line', 'bar', 'barh', 'kde':
# 核密度估计
text.Age[text.Pclass == 1].plot(kind='kde')   #可以看到不同舱位的年龄分布
text.Age[text.Pclass == 2].plot(kind='kde')
text.Age[text.Pclass == 3].plot(kind='kde')
plt.xlabel("age")
plt.legend((1,2,3),loc="best")

从下图可以看出20岁到40岁的人多
在这里插入图片描述

## 3.5可视化展示泰坦尼克号数据集中不同年龄的人生存与死亡人数分布情况。(不限表达方式)
# FacetGrid当您想要在数据集的子集中分别可视化变量的分布或多个变量之间的关系时,该类非常有用
# 一个FacetGrid可以与多达三个维度可以得出:row,col,和hue。前两个与得到的轴阵列有明显的对应关系; 将色调变量视为沿深度轴的第三个维度,其中不同的级别用不同的颜色绘制。
# # 在该网格上可视化数据的主要方法是使用该FacetGrid.map()方法。
# 为其提供绘图功能以及要绘制的数据框中的变量名称。让我们使用直方图来

facet = sns.FacetGrid(text, hue="Survived",aspect=3) # 例如:col="sex", hue="smoker",即列表示性别,颜色语意表示是否吸烟,aspect:纵横比,横轴长度和纵轴的比
facet.map(sns.kdeplot,'Age',shade= True)   

facet.set(xlim=(0, text['Age'].max()))  #set( )通过设置参数可以用来设置背景,调色板等,更加常用。
facet.add_legend()

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值