十四.PyEcharts基础学习

目录

1-PyEcharts介绍

优点:

安装:

官方文档:

2-PyEcharts快速入门

2.1 第一个图表绘制

2.2 链式调用

2.3 opeions配置项

2.4 渲染图片文件

2.5 使用主题

3-PyEcharts配置项

3.1 初始化配置项InitOpts

InitOpts

3.2 全局配置项set_global_opts

标题配置TitleOpts

图例配置LegendOpts

常见图标:

工具箱配置ToolboxOpts

视觉映射配置VisualMapOpts

提示框配置:TooltipOpts

区域缩放配置:DataZoomOpts



1-PyEcharts介绍

Echarts是一个由百度开源数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。

而Python 是一门富有表达力的语言,很适合用于数据处理。

当数据分析遇上数据可视化时,pyecharts诞生了。

Echarts是用JS来写的,而我们使用pyecharts则可以使用Python来调用里面的API

优点:

1、简洁的 API 设计,使用如丝滑般流畅,支持链式调用.

2、囊括了 30+ 种常见图表,应有尽有 .

3、支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab.

4、可轻松集成至 Flask,Django 等主流 Web 框架.

5、高度灵活的配置项,可轻松搭配出精美的图表.

6、详细的文档和示例,帮助开发者更快的上手项目.

7、多达 400+ 地图文件以及原生的百度地图,为地理数据可视化提供强有力的支持.

安装:

pip install pyecharts==1.9.1

官方文档:

pyecharts - A Python Echarts Plotting Library built with love.


2-PyEcharts快速入门

pyecharts中可以绘制的图有很多,这里我们先来总体的了解一下他的使用风格,和调用的方式。有宏观的理解后,再具体学习具体图形的绘制。

2.1 第一个图表绘制

from pyecharts.charts import Bar

from pyecharts.charts import Bar
​
# Bar绘制柱状图
bar = Bar()
bar.add_xaxis(["苹果","华为","联想","三星","小米"])
bar.add_yaxis("淘宝",[12000,8000,6000,14000,4000])
bar.add_yaxis("京东",[13000,7500,4000,12000,6000])
​
# render 默认渲染成html
bar.render()    #'可传文件名--保存'
# 在notebook中展示
bar.render_notebook()

2.2 链式调用

--上面代码的简化版.更方便.

bar = (Bar()   #创建对象.#注意:这里是  点.add_xaxis(["苹果","华为","联想","三星","小米"]).add_yaxis("淘宝",[12000,8000,6000,14000,4000]).add_yaxis("京东",[13000,7500,4000,12000,6000])
)
bar.render_notebook()

2.3 opeions配置项

全局/局部/初始化

from pyecharts import options as opts
from pyecharts import options as opts
​
bar = (Bar().add_xaxis(["苹果","华为","联想","三星","小米"]).add_yaxis("淘宝",[12000,8000,6000,14000,4000]).add_yaxis("京东",[13000,7500,4000,12000,6000])
#            set_global_opts:全局配置  title_opts:标题.set_global_opts(title_opts=opts.TitleOpts(title="主标题1",subtitle="副标题1"))
#     .set_global_opts(title_opts={"text":"主标题2","subtext":"副标题2"})
​
)
bar.render_notebook()

2.4 渲染图片文件

--正常保存下来的图片(png/jpg)的背景是没有进行渲染的.

from pyecharts.render import make_snapshot
# pip install snapshot_selenium
from snapshot_selenium import snapshot
#这里要用到自动化,浏览器自动化别忘了~~
bar = (Bar().add_xaxis(["苹果","华为","联想","三星","小米"]).add_yaxis("淘宝",[12000,8000,6000,14000,4000]).add_yaxis("京东",[13000,7500,4000,12000,6000])
​
)
make_snapshot(snapshot,bar.render(),"bar.png")

2.5 使用主题

  • 默认主题类型为WHITE

  • 内置主题类型包括LIGHT、DARK、CHALK、ESSOS、INFOGRAPHIC、MACARONS、PURPLE_PASSION、ROMA、ROMANTIC、SHINE、VINTAGE、WALDEN、WESTEROS、WONDERLAND

  • 可参考官方文档:pyecharts - A Python Echarts Plotting Library built with love.

from pyecharts.globals import ThemeType
​
bar = (Bar(#对象里面设置主题(配置项)init_opts=opts.InitOpts(theme=ThemeType.DARK)).add_xaxis(["苹果","华为","联想","三星","小米"]).add_yaxis("淘宝",[12000,8000,6000,14000,4000]).add_yaxis("京东",[13000,7500,4000,12000,6000])
​
)
bar.render_notebook()

3-PyEcharts配置项

3.1 初始化配置项InitOpts

  • InitOpts
from pyecharts.charts import Bar
from pyecharts import options as opts
from pyecharts.faker import Faker
from pyecharts.globals import ThemeType, RenderType
​
# 生成同一属性的七个值
Faker.choose()      #Faker ---> 类似于random   #快速创建,方便啊.
# 生成随机的七组数
Faker.values()
​
bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",renderer=RenderType.CANVAS,     #渲染风格page_title="商品价格对比",theme=ThemeType.WESTEROS,   #主题bg_color="white",          #背景颜色)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values())
)
bar.render_notebook()

3.2 全局配置项set_global_opts

标题配置TitleOpts

bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# TitleOpts:标题title_opts=opts.TitleOpts(title="价格对比柱状图",title_link="https://www.taobao.com",  # 点击主标题的跳转链接!!!#在哪个窗口打开.title_target="blank",  # blank:新窗口打开   self:当前窗口打开#主要是主标题的跳转.# subtitle="副标题",# subtitle_link="https://www.taobao.com",# subtitle_target="blank",# 位置 靠左 pos_left="20px",pos_top="30px",padding=5,   # 内边距item_gap=5, # 主副标题之间的距离))
)
bar.render_notebook()

图例配置LegendOpts

常见图标:

circle(圆),rect(矩形),roundRect(圆弧矩形),triangle(三角形),diamond(棱形) ,pin(坐标) arrow(位置)

bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# LegendOpts 图例配置项legend_opts=opts.LegendOpts(type_="plain",  # 图例类型  plain普通图例    scroll:滚动翻页图例(图例很多)is_show=True,   # 是否显示图例pos_left="90%", # 图例的位置orient="veritica",  # veritica(垂直)或者horizontal(水平)item_gap=5,      # 图例之间的距离item_width=30,   # 图例的宽度item_height=10,   # 图例的高度# pyecharts常见图标 legend_icon="triangle"))
)
bar.render_notebook()

工具箱配置ToolboxOpts

bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# TooltipOpts:提示框配置项toolbox_opts=opts.ToolboxOpts(is_show=True,pos_right="10"))
)
bar.render_notebook()

视觉映射配置VisualMapOpts

bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# VisualMapOpts:视觉映射visualmap_opts=opts.VisualMapOpts(is_show=True,  # 显示映射条type_="color", # color颜色 size大小min_=0,max_=150,range_opacity=0.8,          # 透明度range_text=["mix","min"],    # 最大最小值文本range_color=["blue","green","red"],  #过度值颜色orient="horizontal",    # 对齐方式# veritica(垂直)或者horizontal(水平)is_piecewise=True       #分段展示))
)
bar.render_notebook()

提示框配置:TooltipOpts

  bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# TooltipOpts:提示框配置项(这里面的设置都是提示框的)tooltip_opts=opts.TooltipOpts(is_show=True,  # 是否显示内容trigger_on="click",       #触发事件: mousemove 鼠标移动 / click 鼠标点击formatter="{a}:{b}:{c}",  # 内容格式:a-系列名 b-数据名  c-值background_color="red",   # 背景颜色border_color="green",     # 边框颜色border_width=2,           # 边框宽度)))bar.render_notebook()

区域缩放配置:DataZoomOpts

bar = (Bar(# init_opts:初始化配置项init_opts=opts.InitOpts(# 画布大小 单位像素width="700px",height="500px",)).add_xaxis(Faker.choose()).add_yaxis("淘宝",Faker.values()).add_yaxis("天猫",Faker.values()).add_yaxis("京东",Faker.values()).set_global_opts(# DataZoomOpts:区域缩放配置项.datazoom_opts=opts.DataZoomOpts(is_show=True,      # 开启区域缩放type_= "slider",   # 托条的类型 slider 和 inside(这个要用鼠标滚动,不好玩)is_realtime=True, # 拖动是否实时跟新.range_start=20,    # 拖动起始位置 单位百分比range_end=80,      # 拖动结束位置 单位百分比is_zoom_lock=True  # 是否锁定拖拽区域.(能否放大放小)  ))
)
bar.render_notebook()


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/294685.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQLBolt,一个练习SQL的宝藏网站

知乎上有人问学SQL有什么好的网站,这可太多了。 我之前学习SQL买了本SQL学习指南,把语法从头到尾看了个遍,但仅仅是心里有数的程度,后来进公司大量的写代码跑数,才算真真摸透了SQL,知道怎么调优才能最大化…

时序数据库IoTDB:功能详解与行业应用

一文读懂时序数据库 IoTDB。 01 为什么需要时序数据库 解释时序数据库前,先了解一下何谓时序数据。 时序数据,也称为时间序列数据,是指按时间顺序记录的同一统计指标的数据集合。这类数据的来源主要是能源、工程、交通等工业物联网强关联行业…

基于Arduino IDE 野火ESP8266模块 文件系统LittleFS 的开发

一、文件系统LittleFS的介绍 LittleFS是一个为微控制器设计的轻量级、可靠且高性能的文件系统。它专为嵌入式设备打造,拥有占用空间小、对硬件要求低的特点,同时保证在断电情况下数据的完整性和稳定性。 1.设计与特点 LittleFS的设计旨在提供嵌入式系统所…

Pytorch for training1——read data/image

blog torch.utils.data.Dataset create dataset with class torch.utils.data.Dataset automaticly import torch from torch.utils.data import Datasetclass MyDataset(Dataset):def __init__(self, data):self.data datadef __getitem__(self, index):# 根据索引获取样本…

数据可视化高级技术(Echarts)

目录 (一)数据可视化概念及Echarts基础知识 数据可视化的好处: 数据可视化的目标 数据可视化的基本流程 (二)数据图表 类别比较图表: 数据关系图表: 数据分布图表: 时间序列…

智能文档合规检测系统:在央企国企招标采购领域的应用

一、背景介绍 在央企国企采购过程中,合规性是一个不可忽视的重要方面。采购方需要确保供应商的资质、业绩、规模等条件符合采购要求,同时避免设置不合理的条件限制或排斥潜在供应商。为了提高采购效率和确保合规性,智能文档合规检测系统应运…

网页的血液——javascript

JavaScript 基础知识概述 1. JavaScript 介绍 JavaScript 是一种高级的、解释型的编程语言,它是一种基于对象的、事件驱动的语言,它允许开发者创建动态的网页。JavaScript 是一种脚本语言,它可以嵌入到 HTML 中,或者作为外部文件…

YOLOv9改进策略 :主干优化 | 无需TokenMixer也能达成SOTA性能的极简ViT架构 | CVPR2023 RIFormer

💡💡💡本文改进内容: token mixer被验证能够大幅度提升性能,但典型的token mixer为自注意力机制,推理耗时长,计算代价大,而RIFormers是无需TokenMixer也能达成SOTA性能的极简ViT架构 ,在保证性能的同时足够轻量化。 💡💡💡RIFormerBlock引入到YOLOv9,多个数…

ADS-B及雷达显示终端8.4

#更新内容# 本次软件更新内容不少,但可见部分不多。主要更新集中的系统后台部分。后台更新内容包括: #后台更新内容# 1、增加了对部分特殊雷达编码格式的支持。应甲方要求,对部分国产雷达及其特殊的雷达编码协议进行了支持,增加了…

OpenHarmony无人机MAVSDK开源库适配方案分享

MAVSDK 是 PX4 开源团队贡献的基于 MavLink 通信协议的用于无人机应用开发的 SDK,支持多种语言如 C/C、python、Java 等。通常用于无人机间、地面站与通信设备的消息传输。 MAVLink 是一种非常轻量级的消息传递协议,用于与无人机(以及机载无…

【好书推荐4】图机器学习

【好书推荐4】图机器学习 写在最前面编辑推荐内容简介作者简介目录前言/序言本书读者内容介绍 🌈你好呀!我是 是Yu欸 🌌 2024每日百字篆刻时光,感谢你的陪伴与支持 ~ 🚀 欢迎一起踏上探险之旅,挖掘无限可能…

分月饼 java题解

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in); int m sc.nextInt(); // 读取员工数量mint n sc.nextInt(); // 读取月饼数量n// 调用distribute方法并打印返回的分配方法总数//先默认每人分一个…

SmartChart的部署以及可能遇见的报错解决方案

简介 数据可视化是一种将数据转化为图形的技术,可以帮助人们更好地理解和分析数据。但是,传统的数据可视化开发往往需要编写大量的代码,或者使用复杂的拖拽工具,不仅耗时耗力,而且难以实现个性化的需求。有没有一种更…

SwiftUI Swift 显示隐藏系统顶部状态栏

Show me the code // // TestHideSystemTopBar.swift // pandabill // // Created by 朱洪苇 on 2024/4/1. //import SwiftUIstruct TestHideSystemTopBar: View {State private var isStatusBarHidden falsevar body: some View {Button {withAnimation {self.isStatusBa…

67、yolov8目标检测和旋转目标检测算法batchsize=1/6部署Atlas 200I DK A2开发板上

基本思想:需求部署yolov8目标检测和旋转目标检测算法部署atlas 200dk 开发板上 一、转换模型 链接: https://pan.baidu.com/s/1hJPX2QvybI4AGgeJKO6QgQ?pwd=q2s5 提取码: q2s5 from ultralytics import YOLO# Load a model model = YOLO("yolov8s.yaml") # buil…

VUE3——生命周期

Vue3.0中可以继续使用Vue2.x中的生命周期钩子,但有有两个被更名: beforeDestroy改名为 beforeUnmountdestroyed改名为 unmounted Vue3.0也提供了 Composition API 形式的生命周期钩子,与Vue2.x中钩子对应关系如下: beforeCreate&g…

vitess执行计划缓存 测试

打开执行计划器缓存: sysbench /usr/local/share/sysbench/oltp_write_only.lua --mysql-host127.0.0.1 --mysql-port15306 --mysql-userroot --mysql-password --mysql-dbcustomer --report-interval10 100s sysbench /usr/local/share/sysbench/oltp_read_only.l…

有哪些AI智能写作软件?七款自动写作神器,建议收藏

AI智能写作软件的发展,为广大写作者提供了便捷高效的创作工具。如今市场上涌现出了许多优秀的AI智能写作软件,它们各自具备独特的特点和功能,为写作者们带来了全新的写作体验。以下将介绍八款备受推崇的自动写作神器,让我们一起来…

淘宝店铺如何从1688一键铺货?官方授权接口,可满足多样化上货需求

此API目前支持以下基本接口: item_get 获得1688商品详情item_search 按关键字搜索商品item_search_img 按图搜索1688商品(拍立淘)item_search_suggest 获得搜索词推荐item_fee 获得商品快递费用seller_info 获得店铺详情item_search_shop 获得…

Adaboost集成学习 | Matlab实现基于LSTM-Adaboost长短期记忆神经网络结合Adaboost集成学习时间序列预测(股票价格预测)

目录 效果一览基本介绍模型设计程序设计参考资料效果一览 基本介绍 Adaboost集成学习 | Matlab实现基于LSTM-Adaboost长短期记忆神经网络结合Adaboost集成学习时间序列预测(股票价格预测) 模型设计 股票价格预测是一个具有挑战性的时间序列预测问题,可以使用深度学习模型如…