python科研做图系列之雷达图

news2024/12/23 7:58:47

文章目录

  • 参考资料
  • matplotlib库画的
  • 复现一个 pyecharts的雷达图
  • 尝试在上面的基础上,把pyecharts 导出存为一般的png图
  • 尝试在上面的基础上,把pyecharts 导出存为一般的矢量图
  • 用pygal画雷达图

参考资料

  1. 参考知乎

    CSDN给出了一些参数
    matplotbib库雷达图官网
    seaborn画图汇总

5 pyecharts 雷达图 这篇写的很不错,参数解释
也详细给出来了。

matplotlib库画的

参考

复现一个 pyecharts的雷达图

复现一下5,并详细讲解一下代码吧。
2022年11月12日09:12:03。
复现过程中 特别坑的bug记录
在这里插入图片描述

ImportError: cannot import name 'Radar' from partially initialized module 'p

然后 在想 昨天 晚上自己 是 成功运行过的哇,还把截图发给导师了,
仔细会议 自己昨天晚上成功复现的步骤,
我记得有安装 pyecharts库这一步,然后 我把 pyecharts这个库卸载重装就可以运行了。
果然重启能解决99%的问题!!!血泪经验!!!!

遂成功复现,。
html端复现成功的完整代码——效果还不错

from pyecharts import options as opts

from pyecharts.charts import Radar
from pyecharts.commons.utils import JsCode

import pandas as pd


# 导入输出图片工具
from pyecharts.render import make_snapshot
# 使用snapshot-selenium 渲染图片
from snapshot_selenium import snapshot
data = pd.DataFrame(pd.read_excel('test.xlsx'))

# 生成绘图series
data_radar = []
for row in range(data.shape[0]):
    dic = {}
    value = []
    for col in range(1, data.shape[1]):
        value.append(int(data.iloc[row, col]))
    dic['name'], dic['value'] = data['员工'][row], value
    data_radar.append([dic])

# 各特征维度取值范围
scope = []
for col in range(1, data.shape[1]):
    dic = {}
    dic['name'] = data.columns[col]
    dic['max'], dic['min'] = max(data.iloc[:, col]), 0
    scope.append(dic)

c = (
    # Radar()
    Radar(init_opts=opts.InitOpts(bg_color={"type": "pattern", "image": JsCode("img"), "repeat": "no-repeat"}))
        .add_js_funcs("""    var img = new Image();
                            img.src = 'bg.png';    """)
    #     .add_js_funcs("""      <a id="download" href="">下载</a>
    # <script>
    # const a = window.document.querySelector('#download')
    # a.addEventListener('click',()=>{
    #     const content = document.querySelector('svg').outerHTML
    #     const blob= new Blob([content], {type: 'xml/svg'})
    #     a.href = URL.createObjectURL(blob)
    #     a.download = 'test.svg'
    # })
    #                    """)

        .add_schema(
        schema=scope,
        shape="circle",
        center=["50%", "50%"],  # 宽高:900px*500px
        radius="60%",
        angleaxis_opts=opts.AngleAxisOpts(
            min_=0,
            max_=360,
            is_clockwise=False,
            interval=10,
            axistick_opts=opts.AxisTickOpts(is_show=True),
            axislabel_opts=opts.LabelOpts(is_show=True),
            axisline_opts=opts.AxisLineOpts(is_show=True),
            splitline_opts=opts.SplitLineOpts(is_show=True)
        ),
        radiusaxis_opts=opts.RadiusAxisOpts(
            min_=0,
            max_=30,
            interval=5,
            splitarea_opts=opts.SplitAreaOpts(
                is_show=True, areastyle_opts=opts.AreaStyleOpts(opacity=1)
            ),
        ),
        polar_opts=opts.PolarOpts(),
        splitline_opt=opts.SplitLineOpts(is_show=False)
    )
        .add(
        series_name="许一",
        data=data_radar[0],
        areastyle_opts=opts.AreaStyleOpts(opacity=0.2),
        linestyle_opts=opts.LineStyleOpts(width=2),
        color='#fc5a50'
    )
        .add(
        series_name="刘二",
        data=data_radar[1],
        areastyle_opts=opts.AreaStyleOpts(opacity=0.2),
        linestyle_opts=opts.LineStyleOpts(width=2),
        color='white'
    )
        .add(
        series_name="张三",
        data=data_radar[2],
        areastyle_opts=opts.AreaStyleOpts(opacity=0.2),
        linestyle_opts=opts.LineStyleOpts(width=2),
        color='white'
    )
        .add(
        series_name="李四",
        data=data_radar[3],
        areastyle_opts=opts.AreaStyleOpts(opacity=0.2),
        linestyle_opts=opts.LineStyleOpts(width=2),
        color='#aa23ff'
    )
        .add(
        series_name="王五",
        data=data_radar[4],
        areastyle_opts=opts.AreaStyleOpts(opacity=0.2),
        linestyle_opts=opts.LineStyleOpts(width=2),
        color='#fcb001'
    )
        .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
        #.set_global_opts(title_opts=opts.TitleOpts(title='员工评价',  pos_left='left'))
        .render("雷达图示例.html")

)
# 这种方法效果不好,暂时不要。
# from snapshot_phantomjs import snapshot
# make_snapshot(snapshot, c.render(), "a.png")

尝试在上面的基础上,把pyecharts 导出存为一般的png图

参考

也不复杂就是
把下载好的 phantomjs 的路径加到系统变量就可以了。
在这里插入图片描述

在这里插入图片描述
成功复现~!
但是不知道为什么 导出的图片会有这种 网格点,

在这里插入图片描述
买了本书 但是 还在路上。
先用其他方法来画图把,其实这个网页版的图还不错。

尝试在上面的基础上,把pyecharts 导出存为一般的矢量图

参考
在这里插入图片描述
下载了个寂寞

先不下载了

用pygal画雷达图

参考
他这个其实也是官网的例子。

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

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

相关文章

Python实现九九乘法表的几种方式,入门必备案例~超级简单~

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 们在学习Python的过程中需要不断的积累和练习&#xff0c;这样才能够走的更远&#xff0c; 今天一起来学习怎么用Python写九九乘法表~ 第一种方法&#xff1a;for-for 代码&#xff1a; for i in range(1, 10):for j in…

数据挖掘面试经总结【私人版,仅供参考】

1特征归一化 1.1为什么需要对数值类型的特征做归一化&#xff1f; 线性函数归一化零均值归一化 1.2在对数据进行预处理时&#xff0c;应该怎样处理类别型特征&#xff1f; 序号编码独热编码二进制编码 1.3什么是组合特征&#xff1f;如何处理高维组合特征&#xff1f; 例…

【python】云打印实现

这两天为了实现云打印功能找了很多相关的文章 记录一下这一篇&#xff0c;python云打印实现-朝花夕拾&#xff0c;代码通过监听文件夹有无产生新文件来判断是否执行&#xff0c;我尝试运行了下没问题&#xff0c;于是打算转载一下 程序运行结果 由于对方的代码和我实现的有点出…

【Maven】你好,Maven >>> 与Maven的初次见面~

个人主页&#xff1a;.29.的博客 学习社区&#xff1a;进去逛一逛~ 个人简介&#xff1a;Java领域新星创作者&#xff1b;阿里云技术博主、星级博主、专家博主&#xff1b;正在Java学习的道路上摸爬滚打&#xff0c;记录学习的过程~ 与Maven的初次见面~一、了解Maven二、Maven的…

Flink双流join导致数据重复

大家都知道flink sql 中 left join 数据不会互相等待&#xff0c;存在 retract 问题&#xff0c;会导致写入 kafka 的数据量变大&#xff0c;就会导致出现数据重复的问题。 举例&#xff1a;即常见的曝光日志流&#xff08;show_log&#xff09;通过 log_id 关联点击日志流&am…

SQL:数据去重的三种方法

1、使用distinct去重 distinct用来查询不重复记录的条数&#xff0c;用count(distinct id)来返回不重复字段的条数。用法注意&#xff1a; distinct【查询字段】&#xff0c;必须放在要查询字段的开头&#xff0c;即放在第一个参数&#xff1b;只能在SELECT 语句中使用&#…

spring整合fastdfs客户端

解决Dependency ‘com.github.tobato:fastdfs-client:1.27.2’ not found 错误问题。 一、 将fastdfs客户端git下来 git https://github.com/happyfish100/fastdfs-client-java.gitcd fastdfs-client-java然后将fastdfs-client-java构建到本地maven仓库 mvn clean install&…

Pandas的数据结构

Pandas的数据结构 处理CSV 文件 CSV&#xff08;Comma-Separated Values&#xff0c;逗号分隔值&#xff0c;有时也称为字符分隔值&#xff0c;因为分隔字符也可以不是逗号&#xff09;&#xff0c;其文件以纯文本形式存储表格数据&#xff08;数字和文本&#xff09;。 Pan…

【强化学习】深入浅出强化学习--机器人找金币

文章目录Grid_mdp.py定义和初始化从环境状态构建观测值ResetStepRenderingClose注册环境参考文章Grid_mdp.py 定义和初始化 首先自定义环境&#xff0c;自定义的环境将继承gym.env环境。在初始化的时候&#xff0c;可以指定环境支持的渲染模式&#xff08;例如human,rgb_arra…

项目实战 | YOLOv5 + Tesseract-OCR 实现车牌号文本识别

项目实战 | YOLOv5 Tesseract-OCR 实现车牌号文本识别 最近看到了各种各样的车牌识别&#xff0c;觉得挺有意思&#xff0c;自己也简单搞一个玩玩&#x1f63c;。 传统的图像处理算法我也不太会&#xff0c;就直接用深度学习的方法实现吧。 文章目录项目实战 | YOLOv5 Tesser…

docker基础篇——万字解读小鲸鱼

目录 前言 为什么会出现docker&#xff1f; 背景 docker理念 容器和虚拟机比较 容器发展简史 容器虚拟化技术 Why Docker docker的基本组成 镜像(image) 容器(container) 仓库(repository&#xff09; 总结 第一个docker镜像——hello-world run干了什么 …

Spring Boot与Shiro实现权限管理04

1.实现用户管理 1.1 用户列表 首先创建dto&#xff0c;用于请求与响应数据的传输。在common包下创建dto包&#xff0c;在该包下创建UserDto.java类。 Data AllArgsConstructor NoArgsConstructor public class UserDto implements Serializable {private Integer id;private…

云原生|kubernetes|本地存储hostpath-provisioner部署以及无token密码方式登陆dashboard的部署

前言&#xff1a; kubernetes的存储类大家应该都知道&#xff0c;常用的有nfs-client-provisioner这样插件形式&#xff0c;其实还有一种本地存储类的插件&#xff0c;只是这个估计很冷门&#xff0c;生产上网络存储持久卷还是主流的&#xff0c;本文将介绍一种本地存储类插件…

Linux基本命令简单介绍

Linux基本命令前言ls命令pwd命令cd命令touch命令mkdirrmdir指令rm命令前言 本文主要简单介绍一下高频使用的Linux基本命令和一些比较快捷的热键&#xff1b; 废话不多说&#xff0c;直接进入主题&#xff01;&#xff01;&#xff01; ls命令 语法&#xff1a; ls 选项目录…

OSPF高级配置——虚链路介绍与配置

作者简介&#xff1a;一名在校云计算网络运维学生、每天分享网络运维的学习经验、和学习笔记。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;网络豆的主页​​​​​​ 目录 前言 一.虚链路及其配置 1.虚链路概述 2.配置虚链路的规则及特点 …

进程的状态

目录前言一、运行态二、终止态三、阻塞态四、挂起态五、Linux中的其他进程状态1. R(running)&#xff1a;运行态2. S(sleeping)&#xff1a;睡眠状态3. D(disk sleeping):阻塞状态4. Z和X状态:死亡与僵尸5. T(Stopping):暂停状态6.t(tracing stopping):追踪暂停状态总结前言 在…

手把手教你实现红黑树

目录 一.红黑树介绍与优势 二.红黑树的特性 ①所有节点不是黑色就是红色 ②根节点为黑色 ③红色节点的左右孩子节点必须为黑色 ④每一条路径均含有相同的黑色节点数 ⑤叶子节点为黑色 三.红黑树实现原理 &#xff08;一&#xff09;.插入节点颜色选择 &#xff08;二…

web安全渗透之钓鱼网站提权

本实验实现1&#xff1a;要生成一个钓鱼网址链接&#xff0c;诱导用户点击&#xff0c;实验过程是让win7去点击这个钓鱼网站链接&#xff0c;则会自动打开一个文件共享服务器的文件夹&#xff0c;在这个文件夹里面会有两个文件&#xff0c;当用户分别点击执行后&#xff0c;则会…

【数据结构】单链表(不带头结点)基本操作详解——C语言实现

&#x1f680; 作者简介&#xff1a;一名在后端领域学习&#xff0c;并渴望能够学有所成的追梦人。 &#x1f40c; 个人主页&#xff1a;蜗牛牛啊 &#x1f525; 系列专栏&#xff1a;&#x1f6f9;初出茅庐C语言、&#x1f6f4;数据结构 &#x1f4d5; 学习格言&#xff1a;博…

Flink系列文档-(YY08)-Flink核心概念

1 核心概念 1.1 基础概念 用户通过算子api所开发的代码&#xff0c;会被flink任务提交客户端解析成jobGraph然后&#xff0c;jobGraph提交到集群JobManager&#xff0c;转化成ExecutionGraph&#xff08;并行化后的执行图&#xff09;然后&#xff0c;ExecutionGraph中的各个…