博客
关于我
Pandas数据可视化怎么做?用实战案例告诉你!
阅读量:800 次
发布时间:2023-02-26

本文共 2223 字,大约阅读时间需要 7 分钟。

数据可视化是数据分析中不可或缺的一部分,它能够通过直观的图表帮助我们快速发现数据中的规律和变量之间的关系。对于数据科学家来说,学习如何高效地进行数据可视化是掌握核心技能的重要环节。

在数据可视化领域,常用的库包括 matplotlibseabornpyecharts。其中,matplotlib 是一个底层库,API丰富但学习门槛较高;seaborn 则基于 matplotlib 提供了更高层次的功能,能够满足大多数可视化需求,但对于特殊需求仍需学习 matplotlib。pyecharts 则具有良好的 Web 统一性,能够实现动态效果的可视化。

在数据处理方面,pandas 是数据科学家不可或缺的工具。它支持数据的采集、读取、清洗和预处理。通过 pandas,我们可以轻松地进行数据清洗操作,例如使用 applymap 来处理数据。与此同时,pandasmatplotlib 的结合也为数据可视化提供了强大的功能。

为了实现可视化效果,我们需要安装以下库:

pip3 install numpypip3 install pandaspip3 install matplotlib

接下来,我们可以使用伦敦天气数据进行演示。首先导入必要的库并读取数据:

import matplotlib.pyplot as pltimport numpy as npimport pandas as pd# 读取数据df = pd.read_csv('data/london2018.csv')

最简单的折线图

使用 df.plot 创建折线图时,可以选择以下方式:

df.plot(x='Month', y='Tmax')  # 默认使用线型df.plot(x='Month', y='Tmax', kind='line')  # 强制使用线型df.plot.line(x='Month', y='Tmax')  # 使用 line kinase

生成的折线图可以添加格线:

df.plot(x='Month', y='Tmax', kind='line', grid=True)

绘制多变量图表

如果需要同时展示多个数据系列,可以使用以下方式:

df.plot(x='Month', y=['Tmax', 'Tmin'])

同样,条形图可以通过以下方式绘制:

df.plot(x='Month', y='Rain', kind='bar')

要绘制水平条形图,可以使用 kind='barh'

df.plot(x='Month', y='Rain', kind='barh')

散点图和饼图

散点图可以通过以下方式绘制:

df.plot(kind='scatter', x='Month', y='Sun')

饼图则可以通过以下方式绘制:

df.plot(kind='pie', y='Sun')

如果需要隐藏图例,可以通过 legend=False 参数实现:

df.plot(kind='pie', y='Sun', legend=False)

更大的数据集

如果使用更大的数据集(如62年的天气数据),可以通过以下方式读取数据:

df2 = pd.read_csv('data/londonweather.csv')

查看数据特征:

df2.Rain.describe()

绘制箱型图:

df2.plot.box(y='Rain')

绘制直方图:

df2.plot.hist(y='Rain')

通过设置 bins 参数可以自定义刻度:

df2.plot.hist(y='Rain', bins=[0,25,50,75,100,125,150,175,200])

多图并存

为了展示多个变量,可以使用子图布局:

df.plot(kind='line', y=['Tmax', 'Tmin', 'Rain', 'Sun'], subplots=True, layout=(2, 2), figsize=(20, 10))

同样,可以绘制条形图的子图:

df.plot(kind='bar', y=['Tmax', 'Tmin', 'Rain', 'Sun'], subplots=True, layout=(2, 2), figsize=(20, 10))

添加标题和保存

给图表添加标题可以通过 title 参数实现:

df.plot(kind='bar', y=['Tmax', 'Tmin'], subplots=True, layout=(1, 2), figsize=(20, 5), title='伦敦天气')

将图表保存为图片文件:

df.plot(kind='pie', y='Rain', legend=False, figsize=(10, 5), title='伦敦天气饼图')plt.savefig('img/pie.png')

df.plot参数说明

df.plot 函数接受多个参数,例如:

  • x:横坐标变量
  • y:纵坐标变量
  • kind:图表类型(如 'line', 'bar', 'pie' 等)
  • figsize:图表尺寸
  • title:图表标题
  • grid:是否显示网格线
  • legend:是否显示图例
  • style:图表风格

通过 help(pd.DataFrame.plot) 可查看详细参数说明。

转载地址:http://bvvfk.baihongyu.com/

你可能感兴趣的文章
Redis事务和锁操作
查看>>
Redis事务中的watch机制-从实例入手学习
查看>>
PHP中如何得到数组的长度
查看>>
Redis 集群模式下一个 Master 挂掉后如何选举?
查看>>
php中引入文件几种方式的区别
查看>>
PHP中把stdClass Object转array的几个方法
查看>>
PHP中替换换行符
查看>>
PHP中有关正则表达式的函数集锦
查看>>
Redis 集群搭建详细指南
查看>>
php中的cookie用法
查看>>
php中的session用法
查看>>
php中级联,php实现三级级联下拉框_PHP
查看>>
php中绘制图像的手册,PHP图像图形处理入门教程(1/3)
查看>>
PHP中获取星期的几种方法
查看>>
Redis 限速器及问题
查看>>
php中高级基础知识点
查看>>
php中,如何将编译后的代码,反编译回去。
查看>>
php之aop实践
查看>>
PHP之APC缓存详细介绍(转)
查看>>
php之memcache,memcached
查看>>