radar pyecharts_跟着官方文档学pyecharts(Radar,Theme)

    大家好,我是小猪仔,经过了一个国庆长假,这周只放一天,当然也只能更一篇文章,于是,这篇跟着官方文档学pyecharts就出炉啦~~

    咳咳,现在跟着官方文档学pyecharts系列已经推出了四期,反响也都很不戳,我们的学习进度图如下:

        基本图表(2/13)

        直角坐标系图表(6/9)

        树形图表(0/2)

        地理图表(1/3)

        3D图表(0/5)

        组合图表(0/4)

咱们今天呢,要讲一个基本图表雷达图和一个“进阶功能”,也就是自定义主题。

/1.Radar雷达图/

    Radar雷达图的样子长这样:

5ff1c36a91907d61b81219a02549becf.png

    其实,基本图表和直角坐标系图表有许多个不同点,如直角坐标系图表是放在坐标系中的,所以需要add两次(分别x,y),而基本图表则不用。

    创建一个简单的Radar图很简单:

from pyecharts.charts import Radarfrom pyecharts import options as optsfrom pyecharts.faker import Fakersc = [{"name":x} for x in Faker.choose()]radar = (    Radar()    .add_schema(        sc    )    .add(        "销量",        [Faker.values(),Faker.values()]    )    .render())

   效果如下:

e41f06526201e356162db88a6bae105e.png

   这个schema意思是“提纲”,也就是“目录”的意思,作用是告诉Radar有那几个数据项:

4f73c3d6df5cd5d72c6e609d29323336.png

        schema的shape可以有多种,如:

[  {"name":数据项名,"max":该项最大值},  {"name":数据项名,"max":该项最大值},  ...]

    或者是:

[  opts.RadarIndicatorItem(name=数据项名,max_=该项最大值),  opts.RadarIndicatorItem(name=数据项名,max_=该项最大值),  ...]

    等等。而下面的add的第一个参数是系列名称,第二个参数是data值,格式如下:

// 二维列表有n行,len(sc)列,每列与schema一一对应[  [1,2,3,4,5],  [6,7,8,9,10],  ...]

    至于Line的样式设置与symbol的样式设置与之前①是一样的,此处不再赘述:

radar = (    Radar(init_opts=opts.InitOpts(width="1000px"))    .add_schema(        sc    )    .add(        "销量",        [Faker.values(),Faker.values()],        symbol = "roundRect",        linestyle_opts=opts.LineStyleOpts(            type_="dash"        )    )    .render())

    在第二行,有一个陌生的InitOpts,他是专门用来初始化的一个类,用于设置整个图标的一些参数,如宽度与样式。

    效果如下:

8105ff49b54610d81632ac35fac660c6.png

    Radar还提供了对LegendOpts的支持,可以用它来选择是否是单例模式。

    什么叫单例模式呢?先看下面例子:

sc = [{"name":x} for x in Faker.choose()]radar = (    Radar(init_opts=opts.InitOpts(width="1000px"))    .add_schema(        sc    )    .add(        "销量",        [Faker.values()],    )    .add(        "价格",        [Faker.values()],    )    .render()) 

    效果如下:

57d648e714f56b37c3b3bde18d89ed0c.png

    这就是“多例模式”,可以同时显示多个系。

    而单例模式只需要增加一行代码:

.set_global_opts(legend_opts=opts.LegendOpts(selected_mode="single"))

    效果如下:

8a945d0891a5d0daf0a1abb74b13477a.png

    如果想要这个“雷达”变成一个圆形,可以在add_schema中增加这几行代码:

shape="circle",radius="80%",

    效果如下:

3248d6e86d8e968f8b6ceec325a6f9a7.png

    或许你还看过这样的Radar图:

7ff1e5b80e9c3fd8b4c4917bee9dd399.png

    这种图的做法和Line差不多,只需要设置一个AreaOpts就好了:

.set_series_opts(areastyle_opts=opts.AreaStyleOpts(opacity=0.1))

    效果如图:

71d582f2e85663b795a0c74c78042772.png

/2.Theme主题/

    设置主题,是一个比较高级的话题。pyecharts内置了许多主题,我们可以用InitOpts来设置主题:

Bar(init_opts=opts.InitOpts(theme=主题))

    内置主题表如下:

名称图片
pyecharts.globals.ThemeType.DARK

0c27f451057e8e9638f64ab02cb78938.png

pyecharts.globals.ThemeType.LIGHT

5ca5bf2da815ab5a17a0dffd3ade76f7.png

pyecharts.globals.ThemeType.CHALK

db93acb908349ee94eab856ac2359a3f.png

pyecharts.globals.ThemeType.PURPLE_PASSION

dac6ac254e794b3c26872bf89820db9d.png

pyecharts.globals.ThemeType.ESSOS

e50931b0ba09dd0fc2ad9b79c3317f99.png

    今天你学废了吗f5c1a507a8b4127774272bd0f53e82fd.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值