Python数据可视化之条形图和热力图

2023-10-26

Python数据可视化之条形图和热力图

提示:介绍
简单介绍Pthon可视化的图表使用


提示:热力图和条形图


前言

提示:这里可以添加本文要记录的大概内容:

与往常一样,我们首先设置编码环境。


提示:以下是本篇文章正文内容,下面案例可供参考

一、导入数据包

import pandas as pd
pd.plotting.register_matplotlib_converters()
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns
print("Setup Complete")

设置完成

二、选择数据集

在本教程中,我们将使用美国交通部跟踪航班延误的数据集。

在 Excel 中打开此 CSV 文件会显示每个月的行(其中 1 = 一月,2 = 二月等)和每个航空公司代码的一列。
在这里插入图片描述
每个条目显示不同航空公司和月份(均为 2015 年)的平均到达延迟(以分钟为单位)。 负条目表示(平均)倾向于提前到达的航班。 例如,美国航空公司 1 月份的平均航班(航空公司代码:AA)大约晚点 7 分钟,而阿拉斯加航空公司 4 月份的平均航班(航空公司代码:AS)大约提前 3 分钟到达。

2.加载数据

和以前一样,我们使用 pd.read_csv 命令加载数据集。

# Path of the file to read
flight_filepath = "../input/flight_delays.csv"

# Read the file into a variable flight_data
flight_data = pd.read_csv(flight_filepath, index_col="Month")

您可能会注意到代码比我们在上一个教程中使用的代码略短。 在这种情况下,由于行标签(来自“月份”列)与日期不对应,所以我们不在括号中添加 parse_dates=True。 但是,我们像以前一样保留前两段文本,以提供两者:

数据集的文件路径(在本例中为 flight_filepath),以及
将用于索引行的列的名称(在本例中,index_col=“Month”)。

2.读入数据

代码如下(示例):

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

检查数据¶
由于数据集很小,我们可以很容易地打印出它的所有内容。 这是通过编写仅包含数据集名称的一行代码来完成的

# Print the data
flight_data

在这里插入图片描述
条形图
假设我们要创建一个条形图,按月显示 Spirit Airlines(航空公司代码:NK)航班的平均到达延误时间。

# Set the width and height of the figure
plt.figure(figsize=(10,6))

# Add title
plt.title("Average Arrival Delay for Spirit Airlines Flights, by Month")

# Bar chart showing average arrival delay for Spirit Airlines flights by month
sns.barplot(x=flight_data.index, y=flight_data['NK'])

# Add label for vertical axis
plt.ylabel("Arrival delay (in minutes)")

在这里插入图片描述

用于自定义文本(标题和垂直轴标签)和图形大小的命令与之前的教程相似。 创建条形图的代码是新的:

# Bar chart showing average arrival delay for Spirit Airlines flights by month
sns.barplot(x=flight_data.index, y=flight_data['NK'])

它包含三个主要组件:

sns.barplot - 这告诉笔记本我们要创建一个条形图。
请记住,sns 指的是 seaborn 包,您在本课程中用于创建图表的所有命令都将以此前缀开头。
x=flight_data.index - 这决定了在水平轴上使用什么。 在这种情况下,我们选择了索引行的列(在这种情况下,包含月份的列)。
y=flight_data[‘NK’] - 这会设置数据中用于确定每个条形高度的列。 在这种情况下,我们选择“NK”列。
重要说明:您必须使用 flight_data.index 选择索引列,并且不能使用 flight_data[‘Month’](这将返回错误)。 这是因为当我们加载数据集时,“月份”列用于索引行。 我们总是必须使用这种特殊的符号来选择索引列。

热图
我们还有另一种绘图类型需要了解:热图!

在下面的代码单元中,我们创建了一个热图来快速可视化 flight_data 中的模式。 每个单元格都根据其对应的值进行颜色编码。

# Set the width and height of the figure
plt.figure(figsize=(14,7))

# Add title
plt.title("Average Arrival Delay for Each Airline, by Month")

# Heatmap showing average arrival delay for each airline by month
sns.heatmap(data=flight_data, annot=True)

# Add label for horizontal axis
plt.xlabel("Airline")

在这里插入图片描述

#创建热图的相关代码如下
# Heatmap showing average arrival delay for each airline by month
sns.heatmap(data=flight_data, annot=True)

此代码包含三个主要组件:

sns.heatmap - 这告诉笔记本我们想要创建一个热图。
data=flight_data - 这告诉笔记本使用 flight_data 中的所有条目来创建热图。
annot=True - 这确保每个单元格的值都出现在图表上。 (忽略它会删除每个单元格中的数字!)
您可以在表中检测到哪些模式? 例如,如果你仔细观察,年底前的月份(尤其是 9-11 月份)对所有航空公司来说都显得相对黑暗。 这表明航空公司在这几个月里(平均而言)更善于保持航班时刻表!

总结

提示:总结:

以上就是今天要讲的内容,本文仅仅简单介绍了条形图个热力图的使用

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python数据可视化之条形图和热力图 的相关文章

  • 如何避免使用全局变量?

    我使用全局变量 但我读到它们不是一个好的实践或Pythonic 我经常使用的函数会给出许多是 否变量 我需要在主函数中使用这些变量 例如 在不使用全局变量的情况下 如何编写以下代码 def secondary function global
  • 存储为 np.arrays 的不同数据集的分组堆积条形图

    我正在研究一个平衡问题 我想比较一些数据 我想通过创建不同年份的堆叠条形图来做到这一点 每年 我想要两个不同数据集的堆叠条形图 我正在尝试创建一种 分组堆积条形图 我设法创建了我想要比较的 2 个堆叠条形图 但它们仍然位于两个不同的图中 我
  • 在Python中解析空选项

    我有一个应用程序 允许您将事件数据发送到自定义脚本 您只需布置命令行参数并指定什么事件数据与什么参数相匹配 问题是这里没有真正的灵活性 您制定的每个选项都将被使用 但并非每个选项都必须有数据 因此 当应用程序构建要发送到脚本的字符串时 某些
  • Django 管理中的嵌套内联?

    好吧 我有一个相当简单的设计 class Update models Model pub date models DateField title models CharField max length 512 class Post mode
  • AWS Lambda - 在区域之间自动复制 EC2 快照?

    我想创建一个 Lambda 函数 python 它将自动将已创建的快照复制到另一个区域 我已联系 AWS Support 他们只向我发送了用于 RDS 数据库的 GitHub 脚本 没有 EC2 快照复制脚本 任何帮助都会很棒 谢谢 是的
  • Unpickle 二进制文件为文本[重复]

    这个问题在这里已经有答案了 我需要对基本上如下所示的系统进行一些维护 复杂的遗留Python程序 gt 二进制pickle文件 gt 另一个复杂的遗留Python程序 这需要准确弄清楚中间 pickle 文件中的内容 我怀疑文件格式比生成和
  • Python - 如何将双引号附加到字符串并存储为新字符串?

    我正在使用 Python 2 6 并且想将双引号附加到字符串并将其存储为新的字符串变量 我不想打印它 但稍后在我的 python 脚本中使用它 例如 a apple b some function a gt b would be equal
  • 混淆矩阵错误“分类指标无法处理多标签指标和多类目标的混合”

    我得到了 Classification metrics can t handle a mix of multilabel indicator and multiclass targets 当我尝试使用混淆矩阵时出错 我正在做我的第一个深度学
  • 如何将 NaN 数组插入 numpy 二维数组

    我试图在二维数组中的特定位置插入任意数量的 NaN 值行 我正在将来自微控制器的一些数据记录在 csv 文件中并使用 python 进行解析 数据存储在 3 列 2D 数组中 如下所示 122 0 1 0 47 0 123 0 1 0 47
  • 使用底图和Python在地图中绘制海洋

    我正在绘制此处提供的 netCDF 文件 https goo gl QyUI4J https goo gl QyUI4J Using the code below the map looks like this 然而 我希望海洋是白色的 更
  • 如何在 Python 中重命名文件并保留创建日期

    我知道创建日期不存储在文件系统本身中 但是当我使用时我遇到了问题os rename 它正在更新我正在使用的文件的创建日期 是否可以重命名文件而不更改其原始创建日期 正如都铎所说 你可以使用os stat http docs python o
  • numpy.polyfit 没有关键字“cov”

    我试图使用 polyfit 来找到一组数据的最佳拟合直线 但我还需要知道参数的不确定性 所以我也想要协方差矩阵 在线文档建议我写 polyfit x y 2 cov True 但这给出了错误 类型错误 polyfit 得到了意外的关键字参数
  • 了解 Tensorflow 中的 while 循环

    我正在使用用于 Tensorflow 的 Python API https www tensorflow org api docs python 我正在努力实施罗森布罗克函数 https www sfu ca ssurjano rosen
  • 如何使用Django模板作为组件?

    我有 5 个模板 index html detail html tag html login html register html and a 基本 html 所有 5 个模板都会扩展基本 html 索引 html 详细信息 html 标签
  • 如何在Python中设置像素的alpha值

    我正在尝试编辑image https drive google com file d 0B8JcwRV HVk0OURrcTFJczhmV2RlUGdMOG0ybldYUVRoamtF view usp sharing以一种将所有白色像素转
  • 分别计算男女宿舍

    我想要的结果是这样的 males 1990 Q1 value Q2 value Q3 Value Q4 Value females Q1 value Q2 value Q3 Value Q4 value 如果任何值不存在则默认值 0 imp
  • 尝试输入字符串时出现名称错误[重复]

    这个问题在这里已经有答案了 import pickle import os import time class Person def init self number address self number number self addr
  • 帮助我在 Python 中实现反向传播

    EDIT2 新的训练集 Inputs 0 0 0 0 0 0 1 0 0 0 2 0 0 0 3 0 0 0 4 0 1 0 0 0 1 0 1 0 1 0 2 0 1 0 3 0 1 0 4 0 2 0 0 0 2 0 1 0 2 0 2
  • 如何加速Python循环

    我查看了几个网站上的一些讨论 但没有一个给我解决方案 这段代码运行时间超过5秒 for i in xrange 100000000 pass 我正在研究整数优化问题 我必须使用O n log n 算法编辑 O n 4 算法 其中n代表矩阵的
  • Python list.extend() 是保序的吗?

    我想知道扩展函数是否保留两个列表中的顺序 gt gt list 1 2 3 gt gt list extend 4 5 gt gt list 1 2 3 4 5 扩展总是这样工作吗 Yes list extend just extends给

随机推荐

  • JS中sort()方法原理及使用

    sort 方法用于对数组的元素进行排序 并返回数组 默认排序顺序是根据字符串UniCode码 因为排序是按照字符串UniCode码的顺序进行排序的 所以首先应该把数组元素都转化成字符串 如有必要 以便进行比较 语法 arrayObject
  • 计算机组成原理(1)-软件设计(二十二)

    程序设计语言 软件设计 二十一 https blog csdn net ke1ying article details 129344983 计算机组成原理在软件设计考试分值占比较高 主要会考 1 数据的表示 数据进制转化 日常生活中使用的都
  • MAC 下 OpenCV4 配置 VScode 失败 Xcode 成功记录(2021年12月)

    2022 1 22更新 VScode 设置成功 详情请见 https blog csdn net qq 42067550 article details 122634801 问题描述 安装好了 OpenCV 但是在 VScode 里面花了3
  • 线程的状态及阻塞

    之前提到了线程和进程 那就提一下线程的状态吧 线程状态通常分为五种 New 新建状态 创建线程对象 该线程的生命周期开始 此时该线程已经有了相应的内存空间和其他资源 Runnable 就绪状态 线程对象创建后 调用该线程的start 方法就
  • 去哪儿,模拟登录(扫码登录)

    声明 本文仅限交流学习使用 请勿使用在任何非法商业活动 禁止用于非法用途 否则后果自负 如有侵权 请告知删除 谢谢 一 去哪儿 出行类大厂 为了安全 查询很多信息需要身份校验 有多种登陆方式 1 1 如查询航班信息时 自动弹出登录窗口 会有
  • MySQL常用函数、关键词

    一 关键词 1 unsigned 非负数 定义非负 可以在定义主键的自增列时使用 column name int UNSIGNED AUTO INCREMENT 2 desc 降序 从大到小 asc 或 缺省 为升序 从小到大 和order
  • 微信小程序之地理位置授权 wx.getLocation

    1 授权地理位置 点击按钮 弹出授权弹窗 点击允许后 在以后的操作中可以随时获取到用户地理位置 点击拒绝后 将无法获取到地理位置 也无法再次点击弹出弹窗
  • TortoiseGit使用详解(1)

    一 版本回退和本地分支推送 1 版本回退 假如我们在develop分支上进行开发 当我们想要将代码回退到之前提交的某一版本时 使用TortoiseGit如何进行操作呢 1 第一步 进入工作空间 右键 TortoiseGit Show log
  • Spring知识点小结

    1 Spring是什么 Spring是一个轻量级的IoC和AOP容器框架 目的是用于简化企业应用程序的开发 它使得开发者只需要关心业务需求 常见的配置方式有三种 基于XML的配置 基于注解的配置 基于Java的配置 主要由以下几个模块组成
  • Jemdoc+Github.io +Mac搭建个人学术主页

    一直想做一个个人学术主页 试过Github Pages的各种模版 也用过知乎里一个高票答案Hugo 但总觉得不够简洁 直到遇到Jemdoc 顿觉这才是学术主页该有的样子 作为Web小白 Mac用户 结合网上搜到的零碎的答案 终于捣鼓成功 看
  • Matlab绘制直方图、概率密度函数、累积分布函数

    视频学习 https www bilibili com video BV1HK411T76d from search seid 16338053070486680597 spm id from 333 337 0 0 总结如下 绘制直方图
  • 人工智能数学基础--概率与统计7:学习中一些术语的称呼或表示变化说明以及独立事件的一些补充推论

    一 概念表示变化说明 笔者最开始学习概率论时 是以美版M R 斯皮格尔等著作的 概率与统计 作为教材学习 学习过程中发现部分内容理解困难 之所以这样 一是这本书的内容太古老 教材是2002年翻译出版的 二是部分内容翻译不是很好 后来感谢AI
  • 【C++OJ2】字符串的倒置 &排列子序列

    愿我们 都能成为可爱又有趣的大人呀 目录 每日总结 排序子序列 字符串的倒置 gt gt 1 每日总结 当一个类对象的生命周期结束后 关于调用析构函数 先调用派生类的析构函数 后调用基类的析构函数 关于一个类的静态成员描述 该类的静态成员变
  • org.springframework.boot.builder.SpringApplicationBuilder.([Ljava/lang/Class;)V

    拆分项目为微服务时候 然后启动报了上面的错误 经过查找资料是pom文件中引入的springboot版本兼容性导致的 进行修改pom文件 修改前 pom部分代码
  • 网络部分问题

    HTTP协议 端口80 工作在应用层 不安全 不需要加密不需要证书 URL以http开头 请求包 请求行 请求头标 空行 请求数据 请求行由 请求方法 请求的URL HTTP版本构成 请求方法 get post head put optio
  • Unity脚本中枚举类型在inspector面板中文显示

    效果 工具脚本 ChineseEnumTool cs using System using UnityEngine if UNITY EDITOR using UnityEditor using System Reflection usin
  • STM使用SPI协议通信-基础(标准库)

    SPI协议是摩托罗拉公司开发的协议 它以主从方式工作 这种模式通常有一个主设备和一个或多个从设备 至少需要下列4根线 1 MISO Master Input Slave Output 主设备数据输入 从设备数据输出 2 MOSI Maste
  • 华为OD机试 - 查字典(Java)

    题目描述 输入一个单词前缀和一个字典 输出包含该前缀的单词 输入描述 单词前缀 字典长度 字典 字典是一个有序单词数组 输入输出都是小写 输出描述 所有包含该前缀的单词 多个单词换行输出 若没有则返回 1 用例 输入 b 3 a b c 输
  • RocketMQ的死信队列

    死信队列用于处理无法被正常消费的消息 当一条消息初次消费失败 消息队列会自动进行消息重试 达到最大重试次数后 若消费依然失败 则表明消费者在正常情况下无法正确地消费该消息 此时 消息队列 不会立刻将消息丢弃 而是将其发送到该消费者对应的特殊
  • Python数据可视化之条形图和热力图

    Python数据可视化之条形图和热力图 提示 介绍 简单介绍Pthon可视化的图表使用 提示 热力图和条形图 文章目录 Python数据可视化之条形图和热力图 前言 一 导入数据包 二 选择数据集 2 加载数据 2 读入数据 总结 前言 提