(3)原神角色数据分析-3
绘图类
在名为“WRITEPHOT.py”的文件中,定义如下绘图方式,则在主页面(app.py)文件中,可通过如下方式调用:
from WRITEPHOTO import WriteScatter,WriteFunnel,WriteBarData,WritePie,WriteLineBar
代码如下:
"""绘图"""
from pyecharts.charts import Scatter
from pyecharts import options as opts
from pyecharts.charts import Funnel
from pyecharts.faker import Faker
from pyecharts.charts import Bar
from pyecharts.charts import Pie
from pyecharts import options as opts
from pyecharts.charts import Bar, Timeline
from pyecharts.faker import Faker
import numpy as np
import pandas as pd# 散点图
class WriteScatter:Name = NoneHp = NoneDef = NoneAtk = Nonedef __init__(self, Name, Hp, Def, Atk):self.Name = Nameself.Hp = Hpself.Def = Defself.Atk = Atkdef write_scatter(self):from pyecharts.faker import Fakerc = (Scatter().add_xaxis(list(self.Name)).add_yaxis("生命值", list(self.Hp)).add_yaxis("防御力", list(self.Def)).add_yaxis("攻击力", list(self.Atk)).set_global_opts(title_opts=opts.TitleOpts(title="Scatter-VisualMap(Size)"),visualmap_opts=opts.VisualMapOpts(type_="size", max_=150, min_=20),xaxis_opts=opts.AxisOpts(axislabel_opts={"rotate": 45})).render("./templates/筛选结果-自动生成.html"))# 漏斗图
class WriteFunnel:# 角色名称role_name = None# 分类依据type_things = Nonedef __init__(self, role_name, type_things):self.role_name = role_nameself.type_things = type_things# zip()函数# >>> a = ['a', 'b', 'c', 'd']# >>> b = ['1', '2', '3', '4']# >>> list(zip(a, b))# [('a', '1'), ('b', '2'), ('c', '3'), ('d', '4')]def write_funnel(self):c = (Funnel().add(self.type_things,[list(z) for z in zip(self.role_name, self.type_things)],sort_="ascending",label_opts=opts.LabelOpts(position="inside"),).set_global_opts(title_opts=opts.TitleOpts(title="Funnel-Sort(ascending)")).render("./templates/排序结果-自动生成.html"))# 数据集
class WriteBarData:def __init__(self, df):self.df = dfdef write_bar_data(self):list_source = [["produce", "生命值", "防御力", "攻击力"]]for x in range(0, len(self.df["角色"])):list_source.append([self.df.iloc[x]["角色"],int(self.df.iloc[x]["生命值"]),int(self.df.iloc[x]["防御力"]),int(self.df.iloc[x]["攻击力"])])print(list_source)c = (Bar().add_dataset(source=list_source).add_yaxis(series_name="生命值", y_axis=[]).add_yaxis(series_name="防御力", y_axis=[]).add_yaxis(series_name="攻击力", y_axis=[]).set_global_opts(title_opts=opts.TitleOpts(title="标题"),xaxis_opts=opts.AxisOpts(type_="category"),).render("./templates/数据集-自动生成.html"))# 饼图
class WritePie:def __init__(self, three_things, role_type, role_add):self.role_things = three_thingsself.role_type = role_typeself.role_add = role_adddef write_pie(self):print()print(self.role_things)c = (Pie().add("",# 这块可以是Series和Series,但不能是Series和list,因为两者无法匹配[list(z) for z in zip(["生命值", "防御力", "攻击力"],[int(self.role_things[0]), int(self.role_things[1]), int(self.role_things[2])])],radius=["40%", "75%"],).set_global_opts(title_opts=opts.TitleOpts(title=f"{self.role_type}属性角色/{self.role_add}"),legend_opts=opts.LegendOpts(orient="vertical", pos_top="15%", pos_left="2%"),).set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}")).render("./templates/单个角色数据-自动生成.html"))# 时间柱状图
class WriteLineBar:def __init__(self):self.role_name = ["火", "水", "冰", "风", "雷", "岩"]def write_lin_bar(self):tl = Timeline()for i in self.role_name:role_things = pd.read_excel("C:/Users/YHT/Desktop/项目/原神各属性角色信息.xlsx", header=0, index_col=0)role_things = role_things.fillna(axis=0, method="ffill")things_list = role_things.groupby("属性").groupsprint(role_things.loc[things_list[i]]["角色"])bar = (Bar().add_xaxis(list(role_things.loc[things_list[i]]["角色"])).add_yaxis("生命值", list(role_things.loc[things_list[i]]["生命值"])).add_yaxis("防御力", list(role_things.loc[things_list[i]]["防御力"])).add_yaxis("攻击力", list(role_things.loc[things_list[i]]["攻击力"])).set_global_opts(title_opts=opts.TitleOpts()))tl.add(bar, f"{i}属性")tl.render("./templates/时间柱状图所有角色-自动生成.html")
相关文章:
(3)原神角色数据分析-3
绘图类 在名为“WRITEPHOT.py”的文件中,定义如下绘图方式,则在主页面(app.py)文件中,可通过如下方式调用: from WRITEPHOTO import WriteScatter,WriteFunnel,WriteBarData,WritePie,WriteLineBar 代码如下: "…...
skywalking日志收集
文章目录 一、介绍二、添加依赖三、修改日志配置1. 添加链路表示traceId2. 添加链路上下文3. 异步日志 四、收集链路日志 一、介绍 在上一篇文章skywalking全链路追踪中我们介绍了在微服务项目中使用skywalking进行服务调用链路的追踪。 本文在全链路追踪的基础上,…...
ASL国产CS5212规格书 DP转VGA 替代RTD2166低成本方案 兼容IT6516设计原理图
CS5212可替代兼容瑞昱RTD2166和联阳T6516,ASL集睿致远这款芯片是一种高性能的DP显示端口到VGA转换器芯片。它结合了DisplayPort输入接口和模拟RGB DAC输出接口,嵌入式单片机基于工业标准8051核心。 CS5212适用于多个细分市场和显示器应用程序࿱…...
关于Jquery的Validate插件--rules添加自定义方法(强密码验证方法)
简介:请看菜鸟教程,根据给出的方法,自定义识别密码是否为复杂密码的方法 链接: https://www.runoob.com/jquery/jquery-plugin-validate.html Query Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单&#…...
股票自动交易接口开发原理及源码分享
股票自动交易接口的开发原理涉及多个方面,主要包括以下几个步骤: 1. 数据接口获取:通过连接到证券交易所或第三方数据提供商的API,获取实时市场数据,包括股票报价、交易成交量、买卖盘口等信息。 2. 策略定义&#x…...
2023/8/11题解
时间限制: 1000MS 内存限制: 65536KB 解题思路 建树 模拟 ,复杂在于建树,此处从题目需求可知需要按层建树,所以需要队列模拟,查找比较容易就是普通的深搜 参考代码 #include<bits/stdc.h> using namespace std; vector<…...
构造函数
一、构造函数 构造函数用来在创建对象时初始化对象,为对象数据成员赋初始值。 类的数据成员是不能在类定义时初始化的,类定义并没有产生一个实体,而是给出了一个数据类型,不占用存储空间,无处容纳数据。 如果一个类…...
JS 原型与继承
本文内容学习于:后盾人 (houdunren.com) 一、原型对象 每个对象都有一个原型prototype对象,通过函数创建的对象也将拥有这个原型对象。 原型是一个指向对象的指针。 1.可以将原型理解为对象的父亲,对象从原型对象继承来属性 2.原型就是对象…...
解决 Oracle 数据库中表被锁问题的方案和方法
我们经常会遇到表被锁的情况,这可能会严重影响数据库的性能和可用性。我将与大家分享如何识别、分析和解决这些问题,以及如何使用特定的 SQL 查询来执行解锁操作。 了解表锁的原因 首先,让我们来了解一下导致表被锁的常见原因。长时间运行的…...
ORACLE行转列、列转行实现方式及案例
ORACLE行转列、列转行实现方式及案例 行转列案例方式1.PIVOT方式2.MAX和DECODE方式3.CASE WHEN和GROUP BY 列转行案例方式1.UNPIVOT方式2.UNION ALL 行转列 案例 假设我们有一个名为sales的表,其中包含了产品销售数据。表中有三列:product(…...
AI自动驾驶
AI自动驾驶 一、自动驾驶的原理二、自动驾驶的分类三、自动驾驶的挑战四、自动驾驶的前景五、关键技术六、自动驾驶的安全问题七、AI数据与自动驾驶八、自动驾驶的AI算法总结 自动驾驶技术是近年来备受关注的热门话题。它代表了人工智能和机器学习在汽车行业的重要应用。本文将…...
思维导图在职业规划中的应用:从职业选择到职业发展的思维导图
职业规划的重要性 在我们进行职业选择的时候,一个有效的职业规划,会对我们的未来有很大的帮助作用。一个好的职业规划可以帮助我们通过认识自己的兴趣、价值观、技能以及优势,找到适合自己的领域。并做出合理有效的职业选择。有了明确的职业目…...
antv l7每次刷新无法加载iconFont
如图,只渲染出了文本,未渲染出iconFont 但是如果我跳转到其他页面再跳转回来(未经过刷新时),可以展示出iconFont 解决: 查看官方源码后 找到了iconfont.tsx文件 可以看到多了一步font loaded, 放到项目中后再次测试&…...
28 玻尔兹曼机
文章目录 28 玻尔兹曼机28.1 模型定义28.2 梯度推导28.3 梯度上升28.4 基于VI[平均场理论]求解后验概率 28 玻尔兹曼机 28.1 模型定义 玻尔兹曼机是一张无向图,其中的隐节点和观测节点可以有任意连接如下图: 我们给其中的节点、连线做出一些定义&#…...
命令提示符之操作基础(Windows)
打开命令提示符 方法一 打开指定文件的文件夹,在路径栏里输入“cmd”,回车,就进入控制台了。默认路径就是指定文件夹的路径。 方法二 打开指定的文件夹,按住shift键,在空白处右击,在菜单栏中选择“在此处打…...
【C语言】初识C语言+进阶篇导读
✨个人主页: Anmia.🎉所属专栏: C Language 🎃操作环境: Visual Studio 2019 版本 本篇目的是面向编程新手,没接触过编程的人。以及C进阶的导读。 内容是C语言重要知识点的简单解释,不做详解。给…...
wxWidgets学习笔记:wxListCtrl使用详解
使用案例 wxListCtrl中放21个item,每一行放两个item,每个item显示图标和名字,点击某个图标,该图标呈现响应状态并响应对应的事件 以下是使用wxListCtrl实现放置21个item,每一行放两个item,每个item显示图…...
酷炫的python日志库-loguru
Loguru是一个python的日志库,比logging更简单,好用,功能丰富。 GitHub - Delgan/loguru: Python logging made (stupidly) simple 安装 pip install loguru 特征 开箱即用,补样板没有处理程序,没有清理程序ÿ…...
html根据图片变换背景色
html根据图片变换背景色 <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>.item {width: 50%;height: 80vh;margin: 0 auto;border: 1px solid red;}</style> </head><body>…...
“深入探究JVM:揭秘Java虚拟机的工作原理“
标题:深入探究JVM:揭秘Java虚拟机的工作原理 摘要:本文将深入探究Java虚拟机(JVM)的工作原理,包括JVM的架构、内存管理、垃圾回收机制以及即时编译等关键概念。通过详细解释这些概念,读者将能够…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
网络编程(UDP编程)
思维导图 UDP基础编程(单播) 1.流程图 服务器:短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
