(7)原神各属性角色的max与min

news2025/1/12 19:08:01

在对全部角色进行分析之后,还有必要对各属性角色的生命值/防御力/攻击力进行max与min显示:

话不多说,上货!

from pyecharts.charts import Radar
from pyecharts import options as opts
import pandas as pd
from pyecharts.charts import Geo, Map, Bar, Line, Page, Pie, Boxplot, WordCloud
from pyecharts import options as opts
from pyecharts.charts import Scatter
from pyecharts.faker import Faker

role_things = pd.read_excel("C:/Users/YHT/Desktop/项目/原神各属性角色信息.xlsx", header=0, index_col=0)
role_things = role_things.fillna(axis=0, method="ffill")
print(role_things)
v1 = [[int(role_things["生命值"].max()), int(role_things["防御力"].max()), int(role_things["攻击力"].max())]]
v2 = [[int(role_things["生命值"].min()), int(role_things["防御力"].min()), int(role_things["攻击力"].min())]]
print(v1)


def a():
    a = (
        Radar()
        .add_schema(
            schema=[
                opts.RadarIndicatorItem(name="生命值", max_=17000),
                opts.RadarIndicatorItem(name="攻击力", max_=1000),
                opts.RadarIndicatorItem(name="防御力", max_=500),
            ]
        )
        .add("max", v1)
        .add("min", v2)
        .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
        .set_global_opts(
            legend_opts=opts.LegendOpts(selected_mode="single"),
            title_opts=opts.TitleOpts(title="角色分析(max/min)"),
        )
    )
    return a


def b():
    b = (
        Bar()
        .add_xaxis(["生命值", "防御力", "攻击力"])
        .add_yaxis("max",
                   [int(role_things["生命值"].max()), int(role_things["防御力"].max()),
                    int(role_things["攻击力"].max())])
        .add_yaxis("min",
                   [int(role_things["生命值"].min()), int(role_things["防御力"].min()),
                    int(role_things["攻击力"].min())])
        .set_global_opts(title_opts=opts.TitleOpts(title="分析", subtitle="生命值/防御力/攻击值"))
    )
    return b


def c():
    c = (
        Bar()
        .add_xaxis(list(role_things["角色"][role_things["生命值"] == role_things["生命值"].max()]) +
                   list(role_things["角色"][role_things["防御力"] == role_things["防御力"].max()]) +
                   list(role_things["角色"][role_things["攻击力"] == role_things["攻击力"].max()])
                   )
        .add_yaxis("max",
                   [int(role_things["生命值"].max()), int(role_things["防御力"].max()),
                    int(role_things["攻击力"].max())])
        .set_global_opts(title_opts=opts.TitleOpts(title="柱状图-max", subtitle=""))
    )
    return c


def d():
    d = (
        Bar()
        .add_xaxis(list(role_things["角色"][role_things["生命值"] == role_things["生命值"].min()]) +
                   list(role_things["角色"][role_things["防御力"] == role_things["防御力"].min()]) +
                   list(role_things["角色"][role_things["攻击力"] == role_things["攻击力"].min()])
                   )
        .add_yaxis("min",
                   [int(role_things["生命值"].min()), int(role_things["防御力"].min()),
                    int(role_things["防御力"].min()),
                    int(role_things["攻击力"].min())])
        .set_global_opts(title_opts=opts.TitleOpts(title="柱状图-min", subtitle=""))
    )
    return d


def e():
    e = (
        Scatter()
        .add_xaxis(["生命值-胡桃/菲谢尔", "防御力-七七/(丽莎/凝光)", "攻击力-魈/胡桃"])
        .add_yaxis("max",
                   [int(role_things["生命值"].max()), int(role_things["防御力"].max()),
                    int(role_things["攻击力"].max())])
        .add_yaxis("min",
                   [int(role_things["生命值"].min()), int(role_things["防御力"].min()),
                    int(role_things["攻击力"].min())])
        .set_global_opts(
            title_opts=opts.TitleOpts(title="max&min"),
            visualmap_opts=opts.VisualMapOpts(type_="size", max_=150, min_=20),
        )
    )
    return e


page = Page(layout=Page.DraggablePageLayout)
page.add(a(), b(), c(), d(), e())
# page.render(".html")
# Page.save_resize_html(".html", cfg_file=".json",dest="./tmplates/各数值max&min.html")

在进行如(5)、(6)中的步骤(步骤省略)之后,会得到如下的页面:

 通过观察,用户可以很清晰的看到各属性角色max与min

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Openlayers实战:选择feature,列表滑动,定位到相应的列表位置

在Openlayers的实际项目中,点击某个图层的feature,在左侧的列表中显示出来,滚动条滑动,能显示在视觉区内,具体的方法请参考源代码。 效果图 数据 guangdong.json https://geo.datav.aliyun.com/areas_v3/bound/440000_full.json 源代码 /* * @Author: 大剑师兰特(xia…

系统架构设计专业技能 · 软件工程之软件测试与维护(六)【系统架构设计师】

系列文章目录 系统架构设计专业技能 网络规划与设计(三)【系统架构设计师】 系统架构设计专业技能 系统安全分析与设计(四)【系统架构设计师】 系统架构设计高级技能 软件架构设计(一)【系统架构设计师…

在CMamke生成的VS项目中插入程序

在主文件夹的CMakeLists.tex中加入SET(COMPILE_WITH_LSVM OFF CACHE BOOL "Compile with LSVM") 再添加IF(COMPILE_WITH_LSVM) MESSAGE("Compiling with: LSVM") ADD_DEFINITIONS(-DCOMPILE_WITH_LSVM) ADD_SUBDIRECTORY(LSVM) LIST(APPEND SRC LSVM_wrap…

华为网络篇 RIPv2的基础配置-25

难度 1复杂度1 目录 一、实验原理 1.1 RIP的版本 1.2 RIP的路由更新方式 1.3 RIP的计时器 1.4 RIP的防环机制 二、实验拓扑 三、实验步骤 四、实验过程 总结 一、实验原理 RIP(Routing Information Protocol,路由信息协议)&am…

strlen和sizeof的区别

大家好,我是苏貝,本篇博客带大家了解C语言中的sizeof和strlen(仅此一篇让你明白它们两的差别),如果大家觉得我写的不错的话,可以给我一个赞👍吗,感谢❤️ 文章目录 strlensizeof 在…

基于python+MobileNetV2算法模型实现一个图像识别分类系统

一、目录 算法模型介绍模型使用训练模型评估项目扩展 二、算法模型介绍 图像识别是计算机视觉领域的重要研究方向,它在人脸识别、物体检测、图像分类等领域有着广泛的应用。随着移动设备的普及和计算资源的限制,设计高效的图像识别算法变得尤为重要。…

Patch SCN一键解决ORA-600 2662故障---惜分飞

客户强制重启库之后,数据库启动报ORA-600 2037,ORA-745 kcbs_reset_pool/kcbzre1等错误 Wed Aug 09 13:25:38 2023 alter database mount exclusive Successful mount of redo thread 1, with mount id 1672229586 Database mounted in Exclusive Mode Lost write protection d…

const和指针的结合

易错知识点 1、常量不能作为左值,防止直接修改常量的值 2、不能将常量的地址泄露给普通指针或普通引用变量,防止间接修改常量的值 // 关于易错知识点第2点 // 不能将常量的地址泄露给普通指针或普通引用变量,防止间接修改常量的值 const int …

Spannable配合AnimationDrawable实现TextView中展示Gif图片

辣的原理解释,反正大家也不爱看,所以直接上代码了 长这样,下面两个图是gif,会动的。 package com.example.myapplication;import android.content.Context; import android.graphics.Bitmap; import android.graphics.drawable…

SpringMVC注解开发

1. 构建流程 1&#xff09;IDEA创建一个Maven项目。配置所需依赖 <dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13.2</version><scope>test</scope></depe…

198、仿真-基于51单片机函数波形发生器调幅度频率波形Proteus仿真(程序+Proteus仿真+原理图+流程图+元器件清单+配套资料等)

毕设帮助、开题指导、技术解答(有偿)见文未 目录 一、硬件设计 二、设计功能 三、Proteus仿真图 四、原理图 五、程序源码 资料包括&#xff1a; 需要完整的资料可以点击下面的名片加下我&#xff0c;找我要资源压缩包的百度网盘下载地址及提取码。 方案选择 单片机的选…

MySQL数据库表的增删查改 - 进阶

一&#xff0c;数据库约束 1.1 约束对象 not null - 该列不能为空unique - 保证该列的每一行都不一样default - 规定没有给列赋值时的默认值&#xff08;自定义&#xff09;primary key - not null 和 unique 的结合&#xff0c;会给该列添加一个索引&#xff0…

StarGANv2: Diverse Image Synthesis for Multiple Domains论文解读及实现(一)

StarGAN v2: Diverse Image Synthesis for Multiple Domainsp github:https://github.com/clovaai/stargan-v2 1 模型架构 模型主要架构由四部分组成 ①Generator、②Mapping network、③Style encoder、④Discriminator Generator&#xff1a;G网络 生成模型G将输入图片x转换…

MATLAB从文件得出数据并计算吸收光谱

这一系列就是科研用的真实程序了&#xff0c;也是对自己的一个备忘录 真的收购每次都重写了 但真的文件太多了找不到啊&#xff01;&#xff01;&#xff01; 好吧是我废物 废话不多说&#xff0c;这就开始 基础的清理&#xff1a; clear clc close all 读取文件中的数据…

Telnet是什么

一.Telnet是什么 Telnet协议是TCP/IP协议家族中的一员&#xff0c;是Internet远程登陆服务的标准协议和主要方式。 二.Telnet的作用 1.telnet就是查看某个端口是否可访问。 我们在搞开发的时候&#xff0c;经常要用的端口就是 8080。那么你可以启动服务器&#xff0c;用tel…

web会话跟踪以及JWT响应拦截机制

目录 JWT 会话跟踪 token 响应拦截器 http是无状态的&#xff0c;登录成功后&#xff0c;客户端就与服务器断开连接&#xff0c;之后再向后端发送请求时&#xff0c;后端需要知道前端是哪个用户在进行操作。 JWT Json web token (JWT), 是为了在网络应用环境间传递声明而…

Maven工程的安装配置及搭建(集成eclipse完成案例,保姆级教学)

目录 一.下载及安装及环境配置 1.下载及安装 2.环境变量的配置 3.检测是否安装成功 4.配置Maven 1.更换本地仓库 2. 配置镜像 二.集成eclipse完成案例 1.eclipse前期配置Maven 2.创建Maven工程 一.下载及安装及环境配置 1.下载及安装 下载地址&#xff1a;Maven – Down…

【Kubernetes】当K8s出现问题时,从哪些方面可以排查

前言 kubernetes&#xff0c;简称K8s&#xff0c;是用8代替名字中间的8个字符“ubernete”而成的缩写。是一个开源的&#xff0c;用于管理云平台中多个主机上的容器化的应用&#xff0c;Kubernetes的目标是让部署容器化的应用简单并且高效&#xff08;powerful&#xff09;,Kub…

VUE3组件

组件基础 {#components-basics} 组件允许我们将 UI 划分为独立的、可重用的部分&#xff0c;并且可以对每个部分进行单独的思考。在实际应用中&#xff0c;组件常常被组织成层层嵌套的树状结构&#xff1a; 这和我们嵌套 HTML 元素的方式类似&#xff0c;Vue 实现了自己的组件…

Mac下⬇️Git如何下载/上传远程仓库

使用终端检查电脑是否安装Git git --version 通过此文章安装Git ➡️ ​​​​​​​传送门&#x1f310; 方式1⃣️使用终端操作 1.下载——克隆远程仓库到本地 git clone [远程地址] 例&#xff1a;git clone https://gitee.com/lcannal/movie.git​ 2.编…