20

使用pandas做数据可视化

 4 years ago
source link: http://mp.weixin.qq.com/s?__biz=MzI1MTE2ODg4MA%3D%3D&%3Bmid=2650071831&%3Bidx=1&%3Bsn=4aa03b8da849711c25f76d06b35b0677
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

寒假工作坊

Python&Stata数据分析课寒假工作坊

现在开始招生了,有兴趣的同学和老师可以戳进来了解

课程安排  

1月9-10日   Python爬虫&文本数据分析(模块 )     

1月11-16日   Stata 应用能力提升与实证前沿(模块Ⅱ)  

地点

浙江  ·  杭州(浙江工商大学)

fyUjQvJ.jpg!web

数据可视化可以让我们很直观的发现数据中隐藏的规律,察觉到变量之间的互动关系,可以帮助我们更好的给他人解释现象,做到一图胜千文的说明效果。

常见的数据可视化库有:

  • matplotlib 是最常见的2维库,可以算作可视化的必备技能库,由于matplotlib是比较底层的库,api很多,代码学起来不太容易。

  • seaborn 是建构于matplotlib基础上,能满足绝大多数可视化需求。更特殊的需求还是需要学习matplotlib

  • pyecharts 上面的两个库都是静态的可视化库,而pyecharts有很好的web兼容性,可以做到可视化的动态效果。

但是在数据科学中,几乎都离不开pandas数据分析库,而pandas可以做

在本文我们可以学到用pandas做

  • 导入数据

  • 绘制最简单的图plot()

  • 多个y的绘制图

  • 折线图、条形图、饼形图和散点图绘制

  • 统计信息绘图

  • 箱型图

  • 轴坐标刻度

  • plot()更多精细化参数

  • 可视化结果输出保存

准备工作

如果你之前没有学过pandas和matpltolib,我们先安装好这几个库

已经安装好,现在我们导入这几个要用到的库。使用的是伦敦天气数据,一开始我们只有12个月的小数据作为例子

MjYRFvE.png!web

plot最简单的图

选择Month作为横坐标,Tmax作为纵坐标,绘图。

大家注意下面两种写法

U3y2Abm.png!web

  • 横坐标轴参数x传入的是df中的列名Month

  • 纵坐标轴参数y传入的是df中的列名Tmax

折线图

上面的图就是折线图,折线图语法有三种

  • df.plot(x='Month', y='Tmax')

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

  • df.plot.line(x='Month', y='Tmax')

U3y2Abm.png!web

vQ7Nv2q.png!web

多个y值

上面的折线图中只有一条线, 如何将多个y绘制到一个图中

比如Tmax, Tmin

Fn2INrE.png!web

条形图

ZRV3eiv.png!web

水平条形图

bar环卫barh,就可以将条形图变为水平条形图

M7JBZrb.png!web

多个变量的条形图

mAvMzqv.png!web

散点图

NBN7Zza.png!web

饼形图

byERJvM.png!web

上图绘制有两个小问题:

  • legend图例不应该显示

  • 月份的显示用数字不太正规

FzEfiib.png!web

更多数据

一开头的数据只有12条记录(12个月)的数据,现在我们用更大的伦敦天气数据

6fQBV36.png!web

上面一共有748条记录, 即62年的记录。

箱型图

QNveiqA.png!web

直方图

bIjuyqj.png!web

纵坐标的刻度可以通过bins设置

Bb6jQj7.png!web

多图并存

yYJf2yu.png!web

umiUbey.png!web

加标题

给可视化起个标题

JZfuQju.png!web

保存结果

可视化的结果可以存储为图片文件

zqiYFrJ.png!web

df.plot更多参数

df.plot(x, y, kind, figsize, title, grid, legend, style)

  • x 只有dataframe对象时,x可用。横坐标

  • y 同上,纵坐标变量

  • kind 可视化图的种类,如line,hist, bar, barh, pie, kde, scatter

  • figsize 画布尺寸

  • title 标题

  • grid 是否显示格子线条

  • legend 是否显示图例

  • style 图的风格

查看plot参数可以使用help

3miaimR.jpg!web

近期文章


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK