鱼C论坛

 找回密码
 立即注册
查看: 3237|回复: 1

[技术交流] Python 小技巧 073:Pyecharts 之 Datazoom

[复制链接]
发表于 2020-3-12 12:53:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 zltzlt 于 2020-3-12 12:53 编辑

Pyecharts 之 Datazoom


Datazoom,顾名思义,是用来对图表进行缩放的。这篇帖子会介绍它的使用方法。

水平的 DataZoom

代码:

  1. from pyecharts.faker import Faker
  2. from pyecharts.charts import Bar
  3. from pyecharts.options import DataZoomOpts    # 导入 DataZoom
  4. bar = Bar()
  5. bar.add_xaxis(Faker.days_attrs)
  6. bar.add_yaxis("商家 A", Faker.days_values)
  7. bar.set_global_opts(datazoom_opts=DataZoomOpts())    # 设置 DataZoom,默认是水平的
  8. bar.render("测试.html")
复制代码


这段代码的第 7 行设置了使用 DataZoom(datazoom_opts=DataZoomOpts()),让我们看看 测试.html 是怎样的:


                               
登录/注册后可看大图


DataZoom 对图表进行了 “缩放”,只展示了部分元素,这样当图表中有再多的数据,使用了 DataZoom 后都不用担心显示拥挤的问题。

垂直的 DataZoom

代码:

  1. from pyecharts.faker import Faker
  2. from pyecharts.charts import Bar
  3. from pyecharts.options import DataZoomOpts    # 导入 DataZoom
  4. bar = Bar()
  5. bar.add_xaxis(Faker.days_attrs)
  6. bar.add_yaxis("商家 A", Faker.days_values)
  7. # 设置 DataZoomOpts 的 orient 参数为 "vertical",表示垂直
  8. bar.set_global_opts(datazoom_opts=DataZoomOpts(orient="vertical"))
  9. bar.render("测试.html")
复制代码


测试.html :

20200312_124719.gif

嵌入图表内的 DataZoom

代码:

  1. from pyecharts.faker import Faker
  2. from pyecharts.charts import Bar
  3. from pyecharts.options import DataZoomOpts    # 导入 DataZoom
  4. bar = Bar()
  5. bar.add_xaxis(Faker.days_attrs)
  6. bar.add_yaxis("商家 A", Faker.days_values)
  7. # 设置 DataZoomOpts 的 type_ 参数为 "inside",表示嵌入图表内(默认是水平)
  8. # 还可以设置 orient 参数为 "vertical" 表示垂直
  9. bar.set_global_opts(datazoom_opts=DataZoomOpts(type_="inside"))
  10. bar.render("测试.html")
复制代码


测试.html :


                               
登录/注册后可看大图


(向上或向下滑动鼠标滚轮调整显示的条形个数)

同时使用多个 DataZoom

同时使用多个 DataZoom 只需要将每个 DataZoom 放进列表中就行了。

代码:

  1. from pyecharts.faker import Faker
  2. from pyecharts.charts import Bar
  3. from pyecharts.options import DataZoomOpts    # 导入 DataZoom
  4. bar = Bar()
  5. bar.add_xaxis(Faker.days_attrs)
  6. bar.add_yaxis("商家 A", Faker.days_values)
  7. # 添加垂直和水平的 DataZoom
  8. bar.set_global_opts(datazoom_opts=[DataZoomOpts(), DataZoomOpts(orient="vertical")])
  9. bar.render("测试.html")
复制代码


测试.html :

20200312_125318.gif

评分

参与人数 1荣誉 +3 鱼币 +3 贡献 +3 收起 理由
LYF511 + 3 + 3 + 3 无条件支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-6-7 07:37:39 | 显示全部楼层
向高手学习
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-26 09:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表