cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

栏目: 数据库 · 发布时间: 5年前

内容简介:plotly是一款强大的基于javascript的可视化库,包括但不限于以下优点:pandas和plotly我们之前都分享过,但是plotly与pandas都这么优秀好用,而且还可以无缝衔接使用,这么重要的技巧没有分享是个遗憾。所以今天准备把刚学到的分享给大家。如果没有多了解无缝衔接,可能代码类似于下面这样,代码量虽然不少但也实现了炫酷的效果。这里就用比较简单的折线图为例

plotly是一款强大的基于javascript的可视化库,包括但不限于以下优点:

  • 可开发web版可视化界面

  • 相比matplotlib、R更加现代化

  • 支持3D可视化绘图

  • 有强大丰富的多语言生态,支持 python 、R、matlab、Jupyter、Excel

  • 与pandas可无缝衔接

pandas和plotly我们之前都分享过,但是plotly与pandas都这么优秀好用,而且还可以无缝衔接使用,这么重要的技巧没有分享是个遗憾。所以今天准备把刚学到的分享给大家。

粗暴的衔接

如果没有多了解无缝衔接,可能代码类似于下面这样,代码量虽然不少但也实现了炫酷的效果。这里就用比较简单的折线图为例

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

无缝衔接外挂库-cufflinks

开始之前我们需要先安装cufflinks库,该库可以很方便的生成实验数据,而且最吸引人的是可以让pandas真正实现无缝衔接plotly,在pandas语法中使用plotly的功能。但要注意目前cufflinks的支持仅限于jupyter notebook,在其他IDLE中无法使用。

我们先看个简单的例子,再详细讲解cufflinks的常用功能。

运行

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

从上面的例子中我们直接在dataframe类型上使用plotly的绘图方法iplot。下面我们详细讲解上面涉及到的一些模块,如生成实验数据、绘图、自定义绘图等

生成实验数据

学习pandas等数据分析包的时候往往需要准备各种各样的数据集,或者使用一些数据生成包,cufflinks库可以帮助我们快速生成所需要的数据,不会因为纠结数据而耽误pandas的学习。

cufflinks.datagen是cufflinks封装好的生成pandas数据的模块,里面包含常见的如bar、pie、scatter、ohlc(美国折线图数据)等。使用前可以先使用help函数查看每种方法的文档

运行

现在我们生成数据

Run

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

我们也可以自定义数据源,如定义好数据的字段名和长度。如果对讲解过程中的方法参数不懂,可以使用help函数,如 help(cf.datagen.lines)

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

自定义图主题样式

cufflinks为我们提供了丰富的主题样式,使用cufflinks.getThemes()可以得到当前cufflinks支持的所有主题

Run

上面的运行结果表明目前cufflinks支持包括polar、pearl、henanigans、solar、ggplot、space和white等7种主题。

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

自定义绘图

cufflinks绘图函数df.iplot参数很多,我们讲解常用的一些参数

  • kind: 图的种类,如scatter、pie、bar、spread等

  • mode: lines、markers、lines+markers,分别表示折线、点、折线和点

  • colors: 轨迹对应的颜色

  • dash:轨迹对应的虚实线,solid、dash、dashdot三种

  • width:轨迹的粗细

  • xTitle:横坐标名称

  • yTitle: 纵坐标的名称

  • title: 图表的标题

下面我们看一个例子

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

一行作图

上面的例子都是使用十几行做图,实际上cufflinks可以只用一行就能做出很酷的图表

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

从上面的例子中会发现cufflinks非常简单易用,大家如果对此感兴趣,可以关注cufflinks项目 https://github.com/santosjorge/cufflinks

推荐阅读

【视频教程】python爬虫|文本分析|机器学习快速入门

flashtext:大规模文本数据清洗利器

学习编程遇到问题,该如何正确的提问?

100G 文本分析语料资源(免费下载)  

seaborn在金融数据可视化中的应用

中文数据可视化你需要知道的一个库

手把手教你学会LDA话题模型可视化pyLDAvis库

如何用Google Colab高效的学习Python

如何用Python找到投资时的最佳组合比例

大神kennethreitz写出requests-html号称为人设计的解析库

少有人知的python数据科学库

cufflinks: 让pandas拥有plotly的炫酷的动态可视化能力

如果想要获取更多例子,可以关注本公众号,

后台回复 ' 20190505 ' 获得本教程及扩展教程的notebook代码下载方式


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Four

The Four

Scott Galloway / Portfolio / 2017-10-3 / USD 28.00

NEW YORK TIMES BESTSELLER USA TODAY BESTSELLER Amazon, Apple, Facebook, and Google are the four most influential companies on the planet. Just about everyone thinks they know how they got there.......一起来看看 《The Four》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具