社区所有版块导航
Python
python开源   pycharm   Django   Python   DjangoApp  
DATA
docker   Elasticsearch  
WEB开发
linux   bottle   tornado   IE   NoSql   MQ   Bootstrap   MongoDB   js   Redis   其他Web框架   Jquery   peewee   DATABASE   web工具   Git   NGINX   zookeeper  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
运营
印度
印度  
Python社区  »  Python

牛批了,1行python代码就可实现炫酷可视化!

Python爱好者社区 • 1 月前 • 111 次点击  

以下文章来源于python数据分析之禅 

作者小dull鸟


之前画图一直在用matlibplot、pyecharts,最近学习了一个新的可视化库--cufflinks,用了两天我已经深深爱上它了

主要是因为它用法简单、图形漂亮、代码量少,用一两行代码,就能画出非常漂亮的图形

下面我们一起来看看吧!

1.用法简单

cufflinks库主要和dataFrame数据结合使用,绘图函数就是 dataFrame.iplot,记住这个就行了,但是 iplot 函数里的参数很多,一些参数说明如下:

kind:图的种类,如 scatter、pie、histogram 等mode:lines、markers、lines+markers,分别表示折线、点、折线和点colors:轨迹对应的颜色dash:轨迹对应的虚实线,solid、dash、dashdot 三种width:轨迹的粗细xTitle:横坐标名称yTitle:纵坐标的名称title:图表的标题

如下图,df为随机生成的dataFrame数据,kind='bar'表示柱状图,title代表标题,xTitle命名X轴,yTitle命名Y轴:

import pandas as pd
import numpy as np
import cufflinks as cf
df=pd.DataFrame(np.random.rand(124), columns=['a''b''c''d'])
df.iplot(kind ='bar',title='示例', xTitle = 'X轴', yTitle ='Y轴')

2.少量代码就能画出非常漂亮的图形

cufflinks为我们提供了丰富的主题样式,支持包括polar、pearl、henanigans、solar、ggplot、space和white等7种主题。

折线图

cf.datagen.lines(4,10).iplot(mode='lines+markers',theme='solar')

cufflinks使用datagen生成随机数,figure定义为lines形式,cf.datagen.lines(2,10)的具体形式如下:

cf.datagen.lines(2,10)  #2代表2组,10代表10天

WCB.EHOAA.CQ
2015-01-01-0.052580-0.351618
2015-01-021.056254 -1.476417
2015-01-030.0780171.129168
2015-01-040.2821410.908655
2015-01-050.960537-0.223996
2015-01-061.4203550.212851
2015-01-072.2661440.358502
2015-01-080.0080341.086130
2015-01-091.8769462.226895
2015-01-101.8556252.852383

散点图

df = pd.DataFrame(np.random.rand(504), columns=['a''b''c''d'])
df.iplot(kind='scatter',mode='markers',colors=['orange','teal','blue','yellow'],size=20,theme='solar')


气泡图

df.iplot(kind='bubble',x='a',y='b',size='c',theme='solar')


subplots 子图

df=cf.datagen.lines(4)
df.iplot(subplots=True,shape=(4,1),shared_xaxes=True,vertical_spacing=.02,fill=True,theme='ggplot')


箱形图




    
cf.datagen.box(20).iplot(kind='box',legend=False,theme='ggplot')


直方图

df.iloc[:,0:3].iplot(kind='histogram')


3D图

cf.datagen.scatter3d(5,4).iplot(kind='scatter3d',x='x',y='y',z='z',text='text',categories='categories')

怎么样?是不是很方便,希望我的介绍能够起到抛砖引玉的作用,cufflinks库还有更丰富的绘图功能等着你去挖掘。

重磅!Python交流已成立


公众号运营至今,离不开小伙伴们的支持。
为了给小伙伴们提供一个互相交流的技术平台,特地开通了Python交流群。
群里有不少技术大神,不时会分享一些技术要点,更有一些资源收藏爱好者不时分享一些优质的学习资料。(免费,不卖课!)
需要进群的朋友,可长按扫描下方二维码。


▲长按扫码

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/120423
 
111 次点击  
分享到微博