使用Python快速制作可视化报表

2020-01-10 15:46:28 浏览数 (1)

我们可以试用可视化包——Pyechart。

Echarts是百度开源的一个数据可视化JS库,主要用于数据可视化。

pyecharts是一个用于生成Echarts图标的类库。实际就是Echarts与Python的对接。

安装

pyecharts兼容Python2和Python3。执行代码:

pip install pyecharts(快捷键Windows R——输入cmd)

初级图表

1.柱状图/条形图
代码语言:javascript复制
from pyecharts import Bar
代码语言:javascript复制
attr=["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
v1=[5,20,36,10,75,90]
v2=[10,25,8,60,20,80]
bar=Bar("各商家产品销售情况")
bar.add("商家A",attr,v1,is_stack=True)
bar.add("商家B",attr,v2,is_stack=True)
bar#bar.render()
2.饼图
代码语言:javascript复制
from pyecharts import Pie
attr=["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","鞋子"]
v1=[11,12,13,10,10,10]
pie=Pie("各产品销售情况")
pie.add("",attr,v1,is_label_show=True)
pie        #pie.render()
3.圆环图
代码语言:javascript复制
from pyecharts import Pie
attr=["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","鞋子"]
v1=[11,12,13,10,10,10]
pie=Pie("饼图—圆环图示例",title_pos="center")
pie.add("",attr,v1,radius=[40,75],label_text_color=None,
       is_label_show=True,legend_orient="vertical",
       legend_pos="left")
pie
4.散点图
代码语言:javascript复制
from pyecharts import Scatter
v1=[10,20,30,40,50,60]
v2=[10,20,30,40,50,60]
scatter=Scatter("散点图示例")
scatter.add("A",v1,v2)
scatter.add("B",v1[::-1],v2)
scatter
5.仪表盘
代码语言:javascript复制
from pyecharts import Gauge
gauge=Gauge("业务指标完成率—仪表盘")
gauge.add("业务指标","完成率",66.66)
gauge
6.热力图
代码语言:javascript复制
import random
from pyecharts import HeatMap
x_axis=[
    "12a","1a","2a","3a","4a","5a","6a","7a","8a","9a","10a","11a",
    "12p","1p","2p","3p","4p","5p","6p","7p","8p","9p","10p","11p",]
y_axis=[
    "Saturday","Friday","Thursday","Wednesday","Tuesday","Monday","Sunday"]
data=[[i,j,random.randint(0,50)] for i in range(24) for j in range(7)]
heatmap=HeatMap()
heatmap.add("热力图直角坐标系",x_axis,y_axis,data,is_visualmap=True,
           visual_text_color="#000",visual_orient="horizontal")
heatmap

高级图表

1.漏斗图
代码语言:javascript复制
from pyecharts import Funnel
attr=["潜在","接触","意向","明确","投入","谈判","成交"]
value=[140,120,100,80,60,40,20]
funnel=Funnel("销售管理分析漏斗图")
funnel.add("商品",attr,value,is_label_show=True,
          label_pos="inside",label_text_color="#fff")
funnel
2.词云图
代码语言:javascript复制
from pyecharts import WordCloud
name=[
    "Sam s  Club","Macys","Amy Schumer","Jurassic World","Charter Communications",
    "Chick Fil A","Planet Fitness","Pitch Perfect","Express","Home","Johnny Depp",
    "Lena Dunham","Lewis Hamilton","KXAN","Mary Ellen Mark","Farrah Abraham",
    "Rita Ora","Serena Williams","NCAA baseball tournament","Point Break"
]
value=[
    10000,6181,4386,4055,2467,2244,1898,1484,1112,
    965,847,582,555,550,462,366,360,282,273,265]
wordcloud=WordCloud(width=1300,height=620)
wordcloud.add("",name,value,word_size_range=[20,100])
wordcloud
3.组合图
代码语言:javascript复制
from pyecharts import Line,Pie,Grid
line=Line("折线图",width=1200)
attr=["周一","周二","周三","周四","周五","周六","周日"]
line.add("最高气温",attr,[11,11,15,13,12,13,10],
        mark_point=["max","min"],mark_line=["average"])
line.add("最低气温",attr,[1,-2,2,5,3,2,0],
        mark_point=["max","min"],mark_line=["average"],
        legend_pos="20%")
attr=["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
v1=[11,12,13,10,10,10]
pie=Pie("饼图",title_pos="55%")
pie.add("",attr,v1,radius=[45,65],center=[65,50],
       legend_pos="80%",legend_orient="vertical")
grid=Grid()
grid.add(line,grid_right="55%")
grid.add(pie,grid_left="60%")
grid

0 人点赞