Python 绘图,我只用 Matplotlib(一)

Photo by Andreea Chidu on Unsplash

当我们的爬虫程序已经完成使命,帮我们抓取大量的数据。你内心也许会空落落的。或许你会疑惑,自己抓取这些数据有啥用?如果要拿去分析,那要怎么分析呢?

说到数据分析,Python 完全能够胜任这方面的工作。Python 究竟如何在数据分析领域做到游刃有余?因为它有“四板斧”,分别是Matplotlib、NumPy、SciPy/Pandas。Matplotlib 是画图工具,NumPy 是矩阵运算库,SciPy 是数学运算工具,Pandas 是数据处理的工具。

1 为什么选择 Matplotlib?

Python 有很多强大的画图库,为什么我偏偏独爱 Maplotlib?我先买个关子,先来看看还有哪些库。

  • Seaborn

Seaborn 是一个基于 Matplotlib 的高级可视化效果库, 偏向于统计作图。因此,针对的点主要是数据挖掘和机器学习中的变量特征选取。相比 Matplotlib ,它语法相对简化些,绘制出来的图不需要花很多功夫去修饰。但是它绘图方式比较局限,不过灵活。

  • Bokeh

Bokeh 是基于 javascript 来实现交互可视化库,它可以在WEB浏览器中实现美观的视觉效果。但是它也有明显的缺点。其一是版本时常更新,最重要的是有时语法还不向下兼容。这对于我们来说是噩梦。其二是语法晦涩,与 matplotlib做比较,可以说是有过之而无不及。

  • ggplot

ggplot 是 yhat 大神基于 R 语言的 ggplot2 制作的 python 版本库。 如果你使用 R 语言的话,ggplot2 可以算是必不可少的工具。所以,很多人都推荐使用该库。不过可惜的是,yhat 大神已经停止维护该库了。

  • Plotly

Plotly 也是一个做可视化交互的库。它不仅支持 Python 还支持 R 语言。Plotly 的优点是能提供 WEB 在线交互,配色也真心好看。如果你是一名数据分析师,Plotly 强大的交互功能能助你一臂之力完成展示。

  • Mapbox

Mapbox 使用处理地理数据引擎更强的可视化工具库。如果你需要绘制地理图,那么它值得你信赖。

总之, Python 绘图库众多,各有特点。但是 Maplotlib 是最基础的 Python 可视化库。如果你将学习 Python 数据可视化。那么 Maplotlib 是非学不可,然后再学习其他库做纵横向的拓展。

2 Matplotlib 能绘制什么图?

Matiplotlib 非常强大,所以最基本的图表自然不在话下。例如说:

直线图

曲线图

柱状图

直方图

饼图

散点图

只能绘制这些最基础的图?显示是不可能的,还能绘制些高级点的图。例如:

高级点的柱状图

等高线图

类表格图形

不仅仅只有这些,还能绘制 3D 图形。例如:

三维柱状图

3D 曲面图

因此,Matplotlib 绘制的图种类能够满足我们做数据分析了。

3 安装 Matplotlib

看到这里,你是否惊叹不已,很很迫不及待地想学习 Matplotlib。而工欲善其事,必先利其器。我们先来学习如何安装 Matplotlib。其实也是很简单,我们借助 pip 工具来安装。

在终端执行以下命令来安装 Matplotlib

pip install Matplotlib 
# 如果出现因下载失败导致安装不上的情况,可以先启动 ss 再执行安装命令
# 或者在终端中使用代理
pip --proxy http://代理ip:端口 install Matplotlib

END

作者:猴哥

公众号:极客猴

爱好读书,喜欢钻研技术,梦想成为文艺青年的 boy。

原文发布于微信公众号 - 极客猴(Geek_monkey)

原文发表时间:2017-11-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏智能算法

图像处理库综述

当需要做一些图像处理方面的学习和研究的时候,首要任务就是选择一套合适的图像处理类库,本文主要简单介绍下各家图像库的一些优缺点。OpenCV,Intel ...

77890
来自专栏数据结构与算法

网络最大流入门

前言 网络最大流是网络流中最基础也是最重要的部分,后边的许多模型也都是由最大流问题引申而来的 最大流 在研究这个问题之前,让我们先来学习一下前置知识 可行流 设...

35750
来自专栏IT大咖说

当Elasticsearch遇见智能客服机器人

摘要 本次分享主要会介绍一下ES是如何帮我们完成NLP的任务的。在做NLP相关任务的时候,ES的相似度算法并不足以支撑用户的搜索,需要使用一些与语义相关的方法进...

69060
来自专栏生信技能树

一篇文章学会miRNA-seq分析

第一讲:文献选择与解读 前阵子逛BioStar论坛的时候看到了一个关于miRNA分析的问题,提问者从NCBI的SRA中下载文献提供的原始数据,然后处理的时候出现...

2.7K70
来自专栏Debian社区

不与版本帝争,16 年后 SciPy 1.0 版终发布

SciPy 是一个开源的 Python 算法库和数学工具包。SciPy 包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、...

13230
来自专栏生信小驿站

Python Vs R:数据科学家的永恒问题pythonR结论

Python有一些使用案例,R也是如此。使用它们的场景各不相同。 更常见的是环境以及客户或雇主的需求决定了Python和R之间的选择。许多事情在Python中都...

11520
来自专栏小文博客

用C语言写贪吃蛇笔记-1

59730
来自专栏数据的力量

五种高效自学方法 | 用学霸的思维建立系统的知识体系

27940
来自专栏机器之心

教程 | 一文入门Python数据分析库Pandas

选自Medium 作者:Ted Petrou 机器之心编译 参与:陈韵竹、李泽南 Pandas 通常用于快速简单的数据操作、聚合和可视化。在这篇文章中,我将概述...

36280
来自专栏PPV课数据科学社区

告诉你做数据分析必须学R的4个理由

论坛君:你很可能已经听说过 R,或许你知道 R 是一种编程语言,而且知道它与统计学有关,但它是否适合您呢?本文作者将试图向大家讲解他对R的看法,分享他认为试用开...

36160

扫码关注云+社区

领取腾讯云代金券