关于pyecharts的补充

五、pyechart

1、画柱状图

使用Bar类型

from pyecharts.charts import Bar#类型为柱状图
from pyecharts import options as opts
bar=Bar()
bar.add_xaxis(['{}月'.format(i) for i in range(1,13)])
bar.add_yaxis('每月所花金额',[100,105,110,150,140,130,135,100,120,125,130,130],category_gap=0,color='red')#输入x和y,顺带调整坐标轴,x一定要是列表!!!!!!!!!
#category_gap是条间间隔
bar.set_global_opts(xaxis_opts=opts.AxisOpts(name='单位 元',axislabel_opts=opts.LabelOpts(rotate=-15)),yaxis_opts=opts.AxisOpts(name='月份'),title_opts=opts.TitleOpts("小明每月所花金额"),datazoom_opts=opts.DataZoomOpts(type_="slider"))
#设置xy轴标题和总标题及副标题,并设置x标旋转,设置滑动选择(区域缩放柱状图)
bar.set_series_opts(label_opts=opts.LabelOpts(is_show=True),#是否显示数值
                    markline_opts=opts.MarkLineOpts( data=[
                opts.MarkLineItem(type_="min", name="最小值"),
                opts.MarkLineItem(type_="max", name="最大值"),
                opts.MarkLineItem(type_="average", name="平均值")]))
bar.render_notebook()
#输出在Jupyter Notebook里,如果想输出在电脑,用bar.render("bar.html")

结果为:
在这里插入图片描述

2、画散点图

使用Scatter类型

静态

from pyecharts.charts import Scatter#类型为散点图
from pyecharts import options as opts
scatter=Scatter()
scatter.add_xaxis(['{}月'.format(i) for i in range(1,13)])
scatter.add_yaxis('每月所花金额',[100,105,110,150,140,130,135,100,120,125,130,130])
scatter.set_global_opts(xaxis_opts=opts.AxisOpts(name='单位 元'),yaxis_opts=opts.AxisOpts(name='月份'),title_opts=opts.TitleOpts("小明每月所花金额"))
scatter.set_series_opts(label_opts=opts.LabelOpts(is_show=True))#这个设定是通用的,设定是否显示数目
scatter.render_notebook()

结果为:
在这里插入图片描述

动态(点会闪烁)(Scatter改为EffectScatter即可)

from pyecharts.charts import EffectScatter#类型为散点图
from pyecharts import options as opts
scatter=EffectScatter()
scatter.add_xaxis(['{}月'.format(i) for i in range(1,13)])
scatter.add_yaxis('每月所花金额',[100,105,110,150,140,130,135,100,120,125,130,130])
scatter.set_global_opts(xaxis_opts=opts.AxisOpts(name='单位 元'),yaxis_opts=opts.AxisOpts(name='月份'),title_opts=opts.TitleOpts("小明每月所花金额"))
scatter.render_notebook()

结果为:在这里插入图片描述

3、画折线图

使用Line类型

from pyecharts.charts import Line#类型为折线图,注意和matplotlib不同
from pyecharts import options as opts
line=Line()
line.add_xaxis(['{}月'.format(i) for i in range(1,13)])
line.add_yaxis('每月所花金额',[100,105,110,150,140,130,135,100,120,125,130,130],label_opts=True,is_symbol_show=True,linestyle_opts=opts.LineStyleOpts(color="red", width=4, type_="dashed"))
#label_opts用来设定是否显示在对应点数值
#is_symbol_show=True基本折线图,is_connect_nones=True跳过空数据折线图,is_smooth=True画平滑图,is_step=True画阶梯图
line.set_global_opts(xaxis_opts=opts.AxisOpts(name='单位 元'),yaxis_opts=opts.AxisOpts(name='月份'),title_opts=opts.TitleOpts("小明每月所花金额"))
line.render_notebook()

结果为:在这里插入图片描述

4、绘制饼状图

使用Pie类型

from pyecharts.charts import Pie#类型为饼图
from pyecharts import options as opts
pie = Pie()
a = ['饮食','娱乐','办事','交税']#输入各部分名称
b = [50,20,20,10]#输入各部分所占的比例和为一百
pie.add('',[list(i) for i in zip(a,b)])#组合a,b入图
pie.set_colors(['red','dark blue','blue','orange'])#设定颜色
pie.set_global_opts(title_opts=opts.TitleOpts("小明消费占比"),legend_opts=opts.LegendOpts(pos_top='5%',pos_right="10%", orient="vertical"))
#把图例放在距顶部5%,右侧10%的位置,排列方式为竖直
pie.render_notebook()

结果为:

在这里插入图片描述

5、画饼图的好兄弟玫瑰图

由饼图带上radius打造而成

from pyecharts.charts import Pie#类型为饼图
from pyecharts import options as opts
pie = Pie()
a = ['饮食','娱乐','办事','交税']#输入各部分名称
b = [50,20,20,10]#输入各部分所占的比例
pie.add('',[list(i) for i in zip(a,b)],radius=['20%','50%'],center=[350,200],rosetype='radius')
#radius在[0,75%]内取,center用来调整中心位置,默认为[50,50],rosetype还可以取area,这样所以部分都占相同比例,但实际占比不同
pie.set_global_opts(title_opts=opts.TitleOpts("小明消费占比"))
pie.render_notebook()

结果为:
在这里插入图片描述

6、画漏斗图

使用Funnel类型

from pyecharts.charts import Funnel#类型为漏斗图
from pyecharts import options as opts
fun = Funnel()
a = ['饮食','娱乐','办事','交税']
b = [50,20,20,10]#输入各部分所占的比例,比例大的在上面,比例总和不限
fun.add('',[list(i) for i in zip(a,b)])
fun.set_global_opts(title_opts=opts.TitleOpts("小明消费占比"))
fun.render_notebook()

结果为:
在这里插入图片描述

7、画词云图

使用WordCloud

from pyecharts.charts import WordCloud
from pyecharts import options as opts
Words = [('鸡你太美',300),('食不食油饼',100),('荔枝两年半成熟',100),('我是IKUN',100),('黑子退散',100),('鸡你实在是太美',100)]#数值为相对大小
wc = WordCloud()
wc.add('',Words)
wc.set_global_opts(title_opts=opts.TitleOpts(title='IKUN'))
wc.render_notebook()

结果为:在这里插入图片描述

8、帅帅的仪表盘

from pyecharts.charts import Gauge#类型为仪表盘
from pyecharts import options as opts
gau=Gauge()
gau.add('',[('km/h',90)],detail_label_opts=opts.GaugeDetailOpts(offset_center=[0, 80]))#这一步是代入数值90,但是km/h会和90重合,所以用后面的函数把90挪动到[0,80],其中表盘中心为[0,0]
gau.set_global_opts(title_opts=opts.TitleOpts(title='现在的速度'))
gau.render_notebook()

结果为:
在这里插入图片描述

9、水球图

from pyecharts.charts import Liquid
from pyecharts import options as opts
liq = Liquid()
x = [0.40]#前面为显示值,也可以多添加几个作为对比,但球面只显示最前面的值
liq.add('lq',x)
liq.set_global_opts(title_opts=opts.TitleOpts('鲲鲲征服鬼畜界的程度'))
liq.render_notebook()

结果为:

在这里插入图片描述

是浮动的,这里无法显示

10、地图

from pyecharts.charts import Geo
from pyecharts import options as opts
from pyecharts.faker import Faker#从pyecharts导入数据
from pyecharts.globals import ChartType
map = Geo()
map.add_schema(maptype='china')
map.add('随机生成的点和数字',[list(z) for z in zip(Faker.provinces,Faker.values())],type_=ChartType.EFFECT_SCATTER,)
map.set_global_opts(title_opts=opts.TitleOpts('中国地图'))
map.render_notebook()

结果为:

在这里插入图片描述

11、关系网络图

from pyecharts.charts import Graph
from pyecharts import options as opts
dot = [opts.GraphNode('小明',symbol_size=40),
      opts.GraphNode('小红',symbol_size=40),
      opts.GraphNode('小月',symbol_size=40)]
link = [opts.GraphLink(source='小明',target='小红',value=100),
       opts.GraphLink(source='小明',target='小月',value=100),
       opts.GraphLink(source='小红',target='小月',value=100)]
gra = Graph()
gra.add('',dot,link,repulsion=4000,layout='circular',edge_label=opts.LabelOpts(is_show=True,position='middle',formatter='一家人'))#replusion设定距离,is_show设定formatter后接的内容是否呈现,position指的是formatter后接的东西的相对线的位置,layout决定绘图类型
gra.set_global_opts(title_opts=opts.TitleOpts('现在可以公开的情报'))
gra.render_notebook()

结果为:在这里插入图片描述

12、整合多个图像为多页形式

有请我们可爱的小明同学

from pyecharts.charts import Pie,Funnel,Page#要三个同时写!!!!
from pyecharts import options as opts
pie = Pie()
a = ['饮食','娱乐','办事','交税']
b = [50,20,20,10]
pie.add('',[list(i) for i in zip(a,b)])
pie.set_global_opts(title_opts=opts.TitleOpts("小明消费占比"))
fun = Funnel()
c = ['饮食','娱乐','办事','交税']
d = [50,20,20,10]
fun.add('',[list(i) for i in zip(a,b)])
fun.set_global_opts(title_opts=opts.TitleOpts("小明消费占比"))
#以上部分正常输入即可
cb = Page()
cb.add(pie,fun)
cb.render_notebook()

结果为:

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值