pyecharts操作三

pyecharts操作三

  • pyecharts 是一个用于生成Echarts图表的Python库。Echarts是百度开源的一个数据可视化JS库,可以生成一些非常酷炫的图表。

  • 环境安装

    • pip install pyecharts
  • 检查版本

import pyecharts
print(pyecharts.version)
2.0.3

  • GL关系图

import random

from pyecharts import options as opts
from pyecharts.charts import GraphGL

nodes = []
for i in range(50):
for j in range(50):
nodes.append(
opts.GraphGLNode(
x=random.random() * 958,
y=random.random() * 777,
value=1,
)
)

links = []
for i in range(50):
for j in range(50):
if i < 50 - 1:
links.append(
opts.GraphGLLink(
source=i + j * 50,
target=i + 1 + j * 50,
value=1,
)
)
if j < 50 - 1:
links.append(
opts.GraphGLLink(
source=i + j * 50,
target=i + (j + 1) * 50,
value=1,
)
)

gl = (
GraphGL(init_opts=opts.InitOpts())
.add(
series_name=“”,
nodes=nodes,
links=links,
itemstyle_opts=opts.ItemStyleOpts(color=“rgba(255,231,114,0.8)”),
linestyle_opts=opts.LineStyleOpts(color=“rgba(255,231,114,0.8)”, width=3),
force_atlas2_opts=opts.GraphGLForceAtlas2Opts(
steps=5,
edge_weight_influence=4,
),
)
.set_dark_mode()
)
gl.render_notebook()
在这里插入图片描述

  • 图形组件

from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.commons.utils import JsCode
from pyecharts.faker import Faker

gr = (
Bar()
.add_xaxis(Faker.choose())
.add_yaxis(“商家A”, Faker.values())
.add_yaxis(“商家B”, Faker.values())
.set_global_opts(
title_opts=opts.TitleOpts(title=“图形组件示例”),
graphic_opts=[
opts.GraphicGroup(
graphic_item=opts.GraphicItem(
rotation=JsCode(“Math.PI / 4”),
bounding=“raw”,
right=110,
bottom=110,
z=100,
),
children=[
opts.GraphicRect(
graphic_item=opts.GraphicItem(
left=“center”, top=“center”, z=100
),
graphic_shape_opts=opts.GraphicShapeOpts(width=400, height=50),
graphic_basicstyle_opts=opts.GraphicBasicStyleOpts(
fill=“rgba(0,0,0,0.3)”
),
),
opts.GraphicText(
graphic_item=opts.GraphicItem(
left=“center”, top=“center”, z=100
),
graphic_textstyle_opts=opts.GraphicTextStyleOpts(
text=“我是一个标签”,
font=“bold 26px Microsoft YaHei”,
graphic_basicstyle_opts=opts.GraphicBasicStyleOpts(
fill=“#fff”
),
),
),
],
)
],
)
)

gr.render_notebook()
在这里插入图片描述

  • 地图

from pyecharts import options as opts
from pyecharts.charts import Map
from pyecharts.faker import Faker

m = (
Map()
.add(“商家A”, [list(z) for z in zip(Faker.provinces, Faker.values())], “china”)
.set_global_opts(
title_opts=opts.TitleOpts(title=“地图”),
visualmap_opts=opts.VisualMapOpts(max_=200),
)
)

m.render_notebook()
在这里插入图片描述

  • 3D地图

from pyecharts import options as opts
from pyecharts.charts import Map3D
from pyecharts.globals import ChartType
from pyecharts.commons.utils import JsCode

example_data = [
(“黑龙江”, [127.9688, 45.368, 100]),
(“内蒙古”, [110.3467, 41.4899, 300]),
(“吉林”, [125.8154, 44.2584, 300]),
(“辽宁”, [123.1238, 42.1216, 300]),
(“河北”, [114.4995, 38.1006, 300]),
(“天津”, [117.4219, 39.4189, 300]),
(“山西”, [112.3352, 37.9413, 300]),
(“陕西”, [109.1162, 34.2004, 300]),
(“甘肃”, [103.5901, 36.3043, 300]),
(“宁夏”, [106.3586, 38.1775, 300]),
(“青海”, [101.4038, 36.8207, 300]),
(“新疆”, [87.9236, 43.5883, 300]),
(“西藏”, [91.11, 29.97, 300]),
(“四川”, [103.9526, 30.7617, 300]),
(“重庆”, [108.384366, 30.439702, 300]),
(“山东”, [117.1582, 36.8701, 300]),
(“河南”, [113.4668, 34.6234, 300]),
(“江苏”, [118.8062, 31.9208, 300]),
(“安徽”, [117.29, 32.0581, 300]),
(“湖北”, [114.3896, 30.6628, 300]),
(“浙江”, [119.5313, 29.8773, 300]),
(“福建”, [119.4543, 25.9222, 300]),
(“江西”, [116.0046, 28.6633, 300]),
(“湖南”, [113.0823, 28.2568, 300]),
(“贵州”, [106.6992, 26.7682, 300]),
(“广西”, [108.479, 23.1152, 300]),
(“海南”, [110.3893, 19.8516, 300]),
(“上海”, [121.4648, 31.2891, 1300]),
]

map3d = (
Map3D()
.add_schema(
itemstyle_opts=opts.ItemStyleOpts(
color=“rgb(15,111,133)”,
opacity=1,
border_width=0.8,
border_color=“rgb(72,225,223)”,
),
map3d_label=opts.Map3DLabelOpts(
is_show=False,
formatter=JsCode(“function(data){return data.name + " " + data.value[2];}”),
),
emphasis_label_opts=opts.LabelOpts(
is_show=False,
color=“#fff”,
font_size=10,
background_color=“rgba(10,33,21,0)”,
),
light_opts=opts.Map3DLightOpts(
main_color=“#fff”,
main_intensity=1.2,
main_shadow_quality=“high”,
is_main_shadow=False,
main_beta=10,
ambient_intensity=0.3,
),
)
.add(
series_name=“bar3D”,
data_pair=example_data,
type_=ChartType.BAR3D,
bar_size=1,
shading=“lambert”,
label_opts=opts.LabelOpts(
is_show=False,
formatter=JsCode(“function(data){return data.name + ’ ’ + data.value[2];}”),
),
)
.set_global_opts(title_opts=opts.TitleOpts(title=“3D地图”))
)
map3d.render_notebook()
在这里插入图片描述

  • 旭日图

from pyecharts.charts import Sunburst
from pyecharts import options as opts

data = [
opts.SunburstItem(
name=“祖父”,
children=[
opts.SunburstItem(
name=“大叔”,
value=15,
children=[
opts.SunburstItem(name=“大叔家大表妹”, value=2),
opts.SunburstItem(
name=“大叔家二表妹”,
value=5,
children=[opts.SunburstItem(name=“二表妹儿子”, value=2)],
),
opts.SunburstItem(name=“大叔家三表妹”, value=4),
],
),
opts.SunburstItem(
name=“父亲”,
value=10,
children=[
opts.SunburstItem(name=“我自己”, value=5),
opts.SunburstItem(name=“兄弟”, value=1),
],
),
],
),
opts.SunburstItem(
name=“二祖父”,
children=[
opts.SunburstItem(
name=“二叔”,
children=[
opts.SunburstItem(name=“二叔家大表妹”, value=1),
opts.SunburstItem(name=“二叔家二表妹”, value=2),
],
)
],
),
]

sunburst = (
Sunburst(init_opts=opts.InitOpts(width=“1000px”, height=“600px”))
.add(series_name=“”, data_pair=data, radius=[0, “90%”])
.set_global_opts(title_opts=opts.TitleOpts(title=“旭日图”))
.set_series_opts(label_opts=opts.LabelOpts(formatter=“{b}”))
)

sunburst.render_notebook()
在这里插入图片描述

  • 3D曲面

import math
from typing import Union

import pyecharts.options as opts
from pyecharts.charts import Surface3D

def float_range(start: int, end: int, step: Union[int, float], round_number: int = 2):
“”"
浮点数 range
:param start: 起始值
:param end: 结束值
:param step: 步长
:param round_number: 精度
:return: 返回一个 list
“”"
temp = []
while True:
if start < end:
temp.append(round(start, round_number))
start += step
else:
break
return temp

def surface3d_data():
for t0 in float_range(-5, 5, 0.05):
y = t0
for t1 in float_range(-5, 5, 0.05):
x = t1
z = math.sin(x2 + y2) * x / 3.14
yield [x, y, z]

su = (
Surface3D()
.add(
series_name=“”,
shading=“color”,
data=list(surface3d_data()),
xaxis3d_opts=opts.Axis3DOpts(type_=“value”),
yaxis3d_opts=opts.Axis3DOpts(type_=“value”),
grid3d_opts=opts.Grid3DOpts(width=100, height=40, depth=100),
)
.set_global_opts(
visualmap_opts=opts.VisualMapOpts(
dimension=2,
max_=1,
min_=-1,
range_color=[
“#313695”,
“#4575b4”,
“#74add1”,
“#abd9e9”,
“#e0f3f8”,
“#ffffbf”,
“#fee090”,
“#fdae61”,
“#f46d43”,
“#d73027”,
“#a50026”,
],
)
)
)

su.render_notebook()
在这里插入图片描述

  • 主题河流图

import pyecharts.options as opts
from pyecharts.charts import ThemeRiver

x_data = [“DQ”, “TY”, “SS”, “QG”, “SY”, “DD”]
y_data = [
[“2023/11/08”, 10, “DQ”],
[“2023/11/09”, 15, “DQ”],
[“2023/11/10”, 35, “DQ”],
[“2023/11/11”, 38, “DQ”],
[“2023/11/12”, 22, “DQ”],
[“2023/11/13”, 16, “DQ”],
[“2023/11/14”, 7, “DQ”],
[“2023/11/15”, 2, “DQ”],
[“2023/11/16”, 17, “DQ”],
[“2023/11/17”, 33, “DQ”],
[“2023/11/18”, 40, “DQ”],
[“2023/11/19”, 32, “DQ”],
[“2023/11/20”, 26, “DQ”],
[“2023/11/21”, 35, “DQ”],
[“2023/11/22”, 40, “DQ”],
[“2023/11/23”, 32, “DQ”],
[“2023/11/24”, 26, “DQ”],
[“2023/11/25”, 22, “DQ”],
[“2023/11/26”, 16, “DQ”],
[“2023/11/27”, 22, “DQ”],
[“2023/11/28”, 10, “DQ”],
[“2023/11/08”, 35, “TY”],
[“2023/11/09”, 36, “TY”],
[“2023/11/10”, 37, “TY”],
[“2023/11/11”, 22, “TY”],
[“2023/11/12”, 24, “TY”],
[“2023/11/13”, 26, “TY”],
[“2023/11/14”, 34, “TY”],
[“2023/11/15”, 21, “TY”],
[“2023/11/16”, 18, “TY”],
[“2023/11/17”, 45, “TY”],
[“2023/11/18”, 32, “TY”],
[“2023/11/19”, 35, “TY”],
[“2023/11/20”, 30, “TY”],
[“2023/11/21”, 28, “TY”],
[“2023/11/22”, 27, “TY”],
[“2023/11/23”, 26, “TY”],
[“2023/11/24”, 15, “TY”],
[“2023/11/25”, 30, “TY”],
[“2023/11/26”, 35, “TY”],
[“2023/11/27”, 42, “TY”],
[“2023/11/28”, 42, “TY”],
[“2023/11/08”, 21, “SS”],
[“2023/11/09”, 25, “SS”],
[“2023/11/10”, 27, “SS”],
[“2023/11/11”, 23, “SS”],
[“2023/11/12”, 24, “SS”],
[“2023/11/13”, 21, “SS”],
[“2023/11/14”, 35, “SS”],
[“2023/11/15”, 39, “SS”],
[“2023/11/16”, 40, “SS”],
[“2023/11/17”, 36, “SS”],
[“2023/11/18”, 33, “SS”],
[“2023/11/19”, 43, “SS”],
[“2023/11/20”, 40, “SS”],
[“2023/11/21”, 34, “SS”],
[“2023/11/22”, 28, “SS”],
[“2023/11/23”, 26, “SS”],
[“2023/11/24”, 37, “SS”],
[“2023/11/25”, 41, “SS”],
[“2023/11/26”, 46, “SS”],
[“2023/11/27”, 47, “SS”],
[“2023/11/28”, 41, “SS”],
[“2023/11/08”, 10, “QG”],
[“2023/11/09”, 15, “QG”],
[“2023/11/10”, 35, “QG”],
[“2023/11/11”, 38, “QG”],
[“2023/11/12”, 22, “QG”],
[“2023/11/13”, 16, “QG”],
[“2023/11/14”, 7, “QG”],
[“2023/11/15”, 2, “QG”],
[“2023/11/16”, 17, “QG”],
[“2023/11/17”, 33, “QG”],
[“2023/11/18”, 40, “QG”],
[“2023/11/19”, 32, “QG”],
[“2023/11/20”, 26, “QG”],
[“2023/11/21”, 35, “QG”],
[“2023/11/22”, 40, “QG”],
[“2023/11/23”, 32, “QG”],
[“2023/11/24”, 26, “QG”],
[“2023/11/25”, 22, “QG”],
[“2023/11/26”, 16, “QG”],
[“2023/11/27”, 22, “QG”],
[“2023/11/28”, 10, “QG”],
[“2023/11/08”, 10, “SY”],
[“2023/11/09”, 15, “SY”],
[“2023/11/10”, 35, “SY”],
[“2023/11/11”, 38, “SY”],
[“2023/11/12”, 22, “SY”],
[“2023/11/13”, 16, “SY”],
[“2023/11/14”, 7, “SY”],
[“2023/11/15”, 2, “SY”],
[“2023/11/16”, 17, “SY”],
[“2023/11/17”, 33, “SY”],
[“2023/11/18”, 40, “SY”],
[“2023/11/19”, 32, “SY”],
[“2023/11/20”, 26, “SY”],
[“2023/11/21”, 35, “SY”],
[“2023/11/22”, 4, “SY”],
[“2023/11/23”, 32, “SY”],
[“2023/11/24”, 26, “SY”],
[“2023/11/25”, 22, “SY”],
[“2023/11/26”, 16, “SY”],
[“2023/11/27”, 22, “SY”],
[“2023/11/28”, 10, “SY”],
[“2023/11/08”, 10, “DD”],
[“2023/11/09”, 15, “DD”],
[“2023/11/10”, 35, “DD”],
[“2023/11/11”, 38, “DD”],
[“2023/11/12”, 22, “DD”],
[“2023/11/13”, 16, “DD”],
[“2023/11/14”, 7, “DD”],
[“2023/11/15”, 2, “DD”],
[“2023/11/16”, 17, “DD”],
[“2023/11/17”, 33, “DD”],
[“2023/11/18”, 4, “DD”],
[“2023/11/19”, 32, “DD”],
[“2023/11/20”, 26, “DD”],
[“2023/11/21”, 35, “DD”],
[“2023/11/22”, 40, “DD”],
[“2023/11/23”, 32, “DD”],
[“2023/11/24”, 26, “DD”],
[“2023/11/25”, 22, “DD”],
[“2023/11/26”, 16, “DD”],
[“2023/11/27”, 22, “DD”],
[“2023/11/28”, 10, “DD”],
]

tr = (
ThemeRiver()
.add(
series_name=x_data,
data=y_data,
singleaxis_opts=opts.SingleAxisOpts(
pos_top=“50”, pos_bottom=“50”, type_=“time”
),
)
.set_global_opts(
tooltip_opts=opts.TooltipOpts(trigger=“axis”, axis_pointer_type=“line”)
)
)

tr.render_notebook()
在这里插入图片描述
源文件可在这里下载:
https://download.csdn.net/download/ak2111/89046104?spm=1001.2014.3001.5501

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

uniApp使用XR-Frame创建3D场景(3)光源投影的运用。

上一篇讲解了如何在uniApp中创建xr-frame子组件并创建简单的3D场景。 这篇我们讲解光源在场景中的运用以及相关属性。 在子组件 xr-start的index.wxml文件中我们加入如下代码 <xr-scene render-system"alpha:true" bind:ready"handleReady"><xr…

PhpStorm 2023 for Mac/Win:开启PHP集成开发新纪元,让编程更高效更智能

在数字时代的浪潮中&#xff0c;PHP作为一种广泛应用的服务器端脚本语言&#xff0c;其重要性不言而喻。而要在PHP的世界里游刃有余&#xff0c;一款强大的集成开发环境&#xff08;IDE&#xff09;是必不可少的。PhpStorm 2023&#xff0c;正是这样一款能够助您一臂之力的编程…

语音模块摄像头模块阿里云结合,实现垃圾的智能识别

语音模块&摄像头模块&阿里云结合 文章目录 语音模块&摄像头模块&阿里云结合1、实现的功能2、配置2.1 软件环境2.2 硬件配置 3、程序介绍3.1 程序概况3.2 语言模块SDK配置介绍3.3 程序文件3.3.1 开启摄像头的程序3.3.2 云端识别函数( Py > C ) & 串口程序…

FebHost:什么是哈萨克斯坦.KZ域名?

哈萨克斯坦&#xff0c;作为中亚地区重要的一员,其国家域名”.kz”正成为这个独立国家在网络世界中的代表。作为一个经济快速发展的国家,哈萨克斯坦的互联网基础设施和网络应用也在蓬勃发展。而.kz域名正是哈萨克斯坦网络身份的重要体现。 作为注册和管理.kz域名的主要机构,哈…

helm 部署 Kube-Prometheus + Grafana + 钉钉告警部署 Kube-Prometheus

背景 角色IPK8S 版本容器运行时k8s-master-1172.16.16.108v1.24.1containerd://1.6.8k8s-node-1172.16.16.109v1.24.1containerd://1.6.8k8s-node-2172.16.16.110v1.24.1containerd://1.6.8 安装 kube-prometheus mkdir -p /data/yaml/kube-prometheus/prometheus &&…

【Web应用技术基础】CSS(6)——使用 HTML/CSS 实现 Educoder 顶部导航栏

第一题&#xff1a;使用flex布局实现Educoder顶部导航栏容器布局 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Educoder</title><script src"https://cdn.staticfile.org/jquery/1.1…

语音陪玩交友软件系统程序-app小程序H5三端源码交付,支持二开!

电竞行业的发展带动其周边产业的发展&#xff0c;绘制着游戏人物图画的抱枕、鼠标垫、海报销量极大&#xff0c;电竞游戏直播、游戏教程短视频也备受人们喜爱&#xff0c;自然&#xff0c;像游戏陪练、代练行业也随之生长起来&#xff0c;本文就来讲讲&#xff0c;从软件开发角…

Starrocks基于主机和容器的读写测试

背景介绍 在云原生时代&#xff0c;存算分离架构显然已经是当下大数据架构的必备选型&#xff0c;但是在不同的虚拟化计算资源&#xff08;主机、容器&#xff09;之上&#xff0c;是否能有差异点以及对于不同服务的性能损耗程度如何&#xff1f;来判断应该在什么样的场景下选…

react+vite+antD+reduce+echarts项目完整记录

reactviteantDreduceecharts项目完整记录 之前写前端项目&#xff0c;都是用的vue&#xff0c;从最开始的vue2到后来的vue3&#xff0c;断断续续写了3年&#xff0c;打包工具也从webpack转到了vite&#xff0c;全局数据管理工具从vuex转到了pinia。总体而言&#xff0c;vue3对…

软件工程学习笔记12——运行维护篇

运行维护篇 一、版本发布1、关于软件版本2、版本发布前&#xff0c;做好版本发布的规划3、规范好发布流程&#xff0c;保障发布质量 二、DevOps工程师1、什么是 DevOps 三、线上故障1、遇到线上故障&#xff0c;新手和高手的差距在哪里2、大厂都是怎么处理线上故障的 四、日志管…

自然语言处理(NLP)全面指南

自然语言处理&#xff08;NLP&#xff09;是人工智能领域中最热门的技术之一&#xff0c;它通过构建能够理解和生成人类语言的机器&#xff0c;正在不断推动技术的发展。本文将为您提供NLP的全面介绍&#xff0c;包括其定义、重要性、应用场景、工作原理以及面临的挑战和争议。…

JavaEE之网络初识(网络中的一些基本概念)详解

&#x1f63d;博主CSDN主页: 小源_&#x1f63d; &#x1f58b;️个人专栏: JavaEE &#x1f600;努力追逐大佬们的步伐~ 目录 1. 前言 2. 网络中的一些基本概念 2.1 IP地址 2.2 端口号 2.3 网络协议 2.4 协议分层 2.5 封装 2.6 分用 (封装的逆向过程) 2.7 客户端 vs …

uniApp使用XR-Frame创建3D场景(7)加入点击交互

上篇文章讲述了如何将XR-Frame作为子组件集成到uniApp中使用 这篇我们讲解如何与场景中的模型交互&#xff08;点击识别&#xff09; 先看源码 <xr-scene render-system"alpha:true" bind:ready"handleReady"><xr-node><xr-mesh id"…

连续信号离散信号的功率谱密度--用MATLAB求功率谱密度

连续信号&离散信号的功率谱密度--用MATLAB求功率谱密度 目录 前言 一、能量及功率定义 1、连续信号 2、离散信号 二、功率谱密度计算公式 三、MATLAB仿真 1、源代码 2、仿真结果分析 总结 前言 一直对数字信号处理中的功率谱密度计算有点好奇&#xff0c;虽然MATLAB有提供现…

【MySQL】15. 事务管理(重点) -- 1

1. CURD不加控制&#xff0c;会有什么问题&#xff1f; 2. CURD满足什么属性&#xff0c;能解决上述问题&#xff1f; 买票的过程得是原子的 ?买票互相应该不能影响 ?买完票应该要永久有效 ?买前&#xff0c;和买后都要是确定的状态? 3. 什么是事务&#xff1f; 事务就是…

探索 2024 年 Web 开发最佳前端框架

前端框架通过简化和结构化的网站开发过程改变了 Web 开发人员设计和实现用户界面的方法。随着 Web 应用程序变得越来越复杂&#xff0c;交互和动画功能越来越多&#xff0c;这是开发前端框架的初衷之一。 在网络的早期&#xff0c;网页相当简单。它们主要以静态 HTML 为特色&a…

CSS 结构伪类选择器 伪元素选择器 盒子模型

目录 1. 结构伪类选择器1.1 :nth-child(公式) 2. 伪元素选择器3. 盒子模型3.1 盒子模型的重要组成部分3.2 盒子模型 - 边框线3.3 盒子模型 - 内边距3.4 盒子模型 - 尺寸计算3.5 盒子模型 - 外边距3.6 盒子模型 - 元素溢出3.7 外边距问题 - 合并现象3.8 外边距问题 - 塌陷问题3.…

游戏推广的新篇章:Xinstall助力实现全渠道效果统计与提升

随着游戏市场的日益繁荣&#xff0c;游戏推广已成为各大游戏公司争夺市场份额的关键环节。然而&#xff0c;面对众多推广渠道和复杂的用户行为&#xff0c;如何精准地评估推广效果、优化投放策略&#xff0c;成为了游戏推广人员亟待解决的问题。此时&#xff0c;Xinstall作为一…

如何使用Windows电脑部署Lychee私有图床网站并实现无公网IP远程管理本地图片

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL| ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-MSVdVLkQMnY9Y2HW {font-family:"trebuchet ms",verdana,arial,sans-serif;f…

网络工程师实验命令(华为数通HCIA)

VRP系统的基本操作 dis version #查看设备版本信息 sys #进入系统视图 system-name R1 #改设备名字为R1进入接口配置IP地址 int g0/0/0 ip address 192.168.1.1 255.255.255.0 #配置接口地址为192.168.1.1/255.255.255.0 ip address 192.168.1.2 24 sub #此…