当前位置: 首页 > news >正文

python给三维点上色,并添加颜色柱

python的matplotlib库给三维点上色,并添加颜色柱

import numpy as np
from pathlib import Path
import matplotlib.cm as cm
import matplotlib.pyplot as plt# 可视化3d点迹
def Show3D_complete(points3D_result, color_list, save_path):# 指定起止点start_point = points3D_result[0]end_point = points3D_result[-1]# 截取中间点points3D_result_T = points3D_result[1:-1].Tcolor_list = color_list[1:-1]ax = plt.subplot(projection = '3d')ax.set_title('3d_points_show')ax.scatter(start_point[0], start_point[1], start_point[2], s=60, c = 'aqua')                            # 绘制起点ax.scatter(end_point[0], end_point[1], end_point[2], s=60, c = 'red')                                   # 绘制终点sc = ax.scatter(points3D_result_T[0], points3D_result_T[1], points3D_result_T[2], s=30, c=color_list, cmap='Greens')   # 绘制中间曲线 jet YlGn winter PiYG Blues# ax.set_xlim3d(xmin=-20, xmax=10)# ax.set_ylim3d(ymin=-55,    ymax=25)# ax.set_zlim3d(zmin=-10, zmax=5)ax.set_xlabel('X')ax.set_ylabel('Y')ax.set_zlabel('Z')ax.view_init(40, -50, 0)cbar = plt.colorbar(sc, fraction=0.028, pad=0.15)cbar.set_label('Speed', rotation=0, fontsize=8)plt.savefig(str(save_path), dpi=420)plt.show()plt.close()def get_color(rate):if isinstance(rate, np.ndarray):colormap = cm.get_cmap('jet')color = colormap(rate)[:, 0:3]else:color = cm.get_cmap('jet')(rate)return colorif __name__ == '__main__':root_path = Path("data/20240525")for dir in root_path.iterdir():print(f"dir: {dir}")if dir.is_file():continuefor trajectory_txt in dir.glob('*.txt'):filter_txt_list = trajectory_txt.open('r').readlines()time_list = []speed_list = []point_list = []for idx, log in enumerate(filter_txt_list):data_fields = log.split(',')if len(data_fields) <= 2:print(f"data_fields <= 2: {data_fields}")continuex, y, z = float(data_fields[1]), float(data_fields[2]), float(data_fields[3])speed_list.append(float(data_fields[4]))point_list.append([x, y, z])print(f"len(point_list): {len(point_list)}")color_rate = np.array(speed_list) / (max(speed_list) - min(speed_list))Show3D_complete(np.array(point_list), color_rate)break

相关文章:

python给三维点上色,并添加颜色柱

python的matplotlib库给三维点上色&#xff0c;并添加颜色柱 import numpy as np from pathlib import Path import matplotlib.cm as cm import matplotlib.pyplot as plt# 可视化3d点迹 def Show3D_complete(points3D_result, color_list, save_path):# 指定起止点start_poin…...

Ubuntu22.04之解决:忘记登录密码(二百三十二)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…...

stream-并行流

定义 常规的流都是串行的流并行流就是并发的处理数据&#xff0c;一般要求被处理的数据互相不影响优点&#xff1a;数据多的时候速度更快&#xff0c;缺点&#xff1a;浪费系统资源&#xff0c;数据少的时候开启线程更耗费时间 模版 Stream<Integer> stream1 Stream.of…...

插件“猫抓”使用方法 - 浏览器下载m3u8视频 - 合并 - 视频检测下载 - 网课下载神器

前言 浏览器下载m3u8视频 - 合并 - 网课下载神器 chrome插件-猫抓 https://chrome.zzzmh.cn/info/jfedfbgedapdagkghmgibemcoggfppbb 步骤&#xff1a; P.s. 推荐大佬的学习视频&#xff01; 《WEB前端大师课》超级棒&#xff01; https://ke.qq.com/course/5892689#term_id…...

【quarkus系列】构建可执行文件native image

目录 序言为什么选择 Quarkus Native Image&#xff1f;性能优势便捷的云原生部署 搭建项目构建可执行文件方式一&#xff1a;配置GraalVM方式二&#xff1a;容器运行错误示例构建过程分析 创建docker镜像基于可执行文件命令式构建基于dockerfile构建方式一&#xff1a;构建mic…...

linux(ubuntu)常用的代理设置

1. git代理设置与取消 # 设置 git config --global http.proxy socks5://127.0.0.1:1234 git config --global https.proxy socks5://127.0.0.1:1234 # 取消 git config --global --unset http.proxy git config --global --unset https.proxy2. conda代理设置与取消 在.cond…...

红队攻防渗透技术实战流程:红队目标上线之Webshell免杀对抗

红队攻防免杀实战 1. 红队目标上线-Webshell免杀-基础准备2. 红队目标上线-Webshell免杀-基础内容3.红队目标上线-Webshell免杀-建立认知3.红队目标上线-Webshell免杀-测试实验3.1 查杀对象-Webshell&C2后门&工具&钓鱼3.2 免杀对象-Webshell&表面代码&行为…...

Habicht定理中有关子结式命题3.4.6的证明

个人认为红色区域有问题&#xff0c;因为 deg ⁡ ( ϕ ( S j ) ) r \deg{\left( \phi\left( S_{j} \right) \right) r} deg(ϕ(Sj​))r&#xff0c;当 i ≥ r i \geq r i≥r时&#xff0c; s u b r e s i ( ϕ ( S j 1 ) , ϕ ( S j ) ) subres_{i}\left( \phi(S_{j 1}),\p…...

【Unity AR开发插件】如何快速地开发可热更的AR应用

预告 本专栏将介绍如何使用这个支持热更的AR开发插件&#xff0c;快速地开发AR应用。 Unity AR开发插件使用教程 更新 二、使用插件一键安装HybridCLR和ARCore 三、配置带HybridCLR的ARCore开发环境 四、制作热更数据-AR图片识别场景...

Divisibility Part1(整除理论1)

Divisibility Part1 学习本节的基础&#xff1a;任意个整数之间进行加、减、乘的混合运算之后的结果仍然是整数。之后将不申明地承认这句话的正确性并加以运用。 用一个不为 0 0 0的数去除另一个数所得的商却不一定是整数&#xff08; a a a除 b b b&#xff0c;写作 b a \frac…...

代码随想录算法训练营第三十七天 | 860.柠檬水找零、406.根据身高重建队列、452.用最少数量的箭引爆气球

目录 860.柠檬水找零 思路 代码 406.根据身高重建队列 思路 代码 452. 用最少数量的箭引爆气球 思路 代码 860.柠檬水找零 本题看上好像挺难&#xff0c;其实挺简单的&#xff0c;大家先尝试自己做一做。 代码随想录 思路 这题还有什么难不难的&#xff0c;这道题不是非…...

GolangFoundation

GolangFoundation 一. Hello World1.1 SDK1.2 环境1.3 hello world1.4 语法规则二. 程序结构2.1 循环2.2 概述2.3 完整写法2.4 类似while2.5 死循环2.6 特殊循环三. 变量3.1 命名3.2 声明2.3 变量...

如果任务过多,队列积压怎么处理?

如果任务过多,队列积压怎么处理? 1、内存队列满了应该怎么办2、问题要治本——发短信导致吞吐量降低的问题不能忽略!!3、多路复用IO模型的核心组件简介1、内存队列满了应该怎么办 如图: 大家可以看到,虽然现在发短信和广告投递,彼此之间的执行效率不受彼此影响,但是请…...

FTP协议——BFTPD基本操作(Ubuntu+Win)

1、描述 本机&#xff08;Win10&#xff09;与虚拟机&#xff08;Ubuntu22.04.4&#xff09;上的BFTPD服务器建立FTP连接&#xff0c;执行一些基本操作。BFTPD安装教程&#xff1a;FTP协议——BFTPD安装&#xff08;Linux&#xff09;-CSDN博客 2、 步骤 启动BFTPD。启动文件…...

为什么需要分布式 ID?

目录 为什么需要分布式 ID 分布式 ID 的生成方法 分布式 ID 的应用场景 小结 在现代软件架构中&#xff0c;分布式系统架构变得越来越流行。在这些系统中&#xff0c;由于组件分散在不同的服务器、数据中心甚至不同的地理位置&#xff0c;因此要构建高性能、可扩展的应用系…...

MIT6.828 Lab2-3 Sysinfo

目录 一、实验内容二、实验过程2.1 已有的代码2.2 需补充内容/kernel/kalloc.c修改&#xff08;剩余内存计算的函数&#xff09;/kernel/proc.c修改&#xff08;统计进程数量的函数&#xff09;/kernel/defs.h修改添加/kernel/sysinfo.c文件/kernel/syscall.h修改/kernel/sysca…...

形态学操作:腐蚀、膨胀、开闭运算、顶帽底帽变换、形态学梯度区别与联系

一、总述相关概念 二、相关问题 1.形态学操作中的腐蚀和膨胀对图像有哪些影响&#xff1f; 形态学操作中的腐蚀和膨胀是两种常见的图像处理技术&#xff0c;它们通过对图像进行局部区域的像素值替换来实现对图像形状的修改。 腐蚀操作通常用于去除图像中的噪声和细小的细节&a…...

StringBufferInputStream类,你学会了吗?

在Java编程中,处理字符串数据流是一项常见的任务。 为了更灵活地处理字符串数据流,Java提供了StringBufferInputStream类,它允许将字符串转换为输入流,从而可以像处理其他输入流一样对字符串进行操作。 本文将深入探讨StringBufferInputStream类的背景、用法、优缺点以及…...

06_Tomcat

文章目录 Tomcat1.概念2.Tomcat安装3.Tomcat项目结构4.标准web项目结构5.Tomcat部署项目方式6.IDEA关联Tomcat6.1 构建tomcat和idea关联6.2 使用idea创建一个Javaweb工程6.3 使用idea将工程**构建**成一个app6.4 使用idea将构建好的app**部署**到tomcat中 Tomcat 1.概念 Tomc…...

系统安全扫描扫出了:可能存在 CSRF 攻击怎么办

公司的H5在软件安全测试中被检查出可能存在 CSRF 攻击&#xff0c;网上找了一堆解决方法&#xff0c;最后用这种方式解决了。 1、问题描述 CSRF 是 Cross Site Request Forgery的缩写(也缩写为也就是在用户会话下对某个 CGI 做一些 GET/POST 的事&#xff0c;RIVTSTCNNARGO一这…...

差分隐私矩阵机制与FFT优化:保护多轮迭代计算的高效方法

1. 差分隐私矩阵分解&#xff1a;从理论到工程实践在联邦学习、推荐系统这些需要频繁进行多轮迭代计算的场景里&#xff0c;我们常常面临一个核心矛盾&#xff1a;既要利用全体参与者的数据来训练一个高质量的全局模型&#xff0c;又要确保任何单个参与者的敏感信息不会在训练过…...

企业部署 AI Agent Harness Engineering 的第一道坎不是技术,是信任

企业部署 AI Agent Harness Engineering 的第一道坎不是技术,是信任 引言 各位正在关注 AI Agent 落地企业生产环境的技术负责人、CTO、架构师、开发者们: 去年我在国内某头部 SaaS 公司做内部 Hackathon 的评委时,看到了一支由 3 个应届毕业的计算机科学博士和 2 个资深后…...

Unity 2022工程实践避坑指南:AssetBundle、URP与Job System深度解析

1. 为什么“Unity 2022 游戏开发实用指南&#xff08;二&#xff09;”这个标题背后藏着一整套被低估的工程实践体系很多人看到“Unity 2022 实用指南”就下意识划走——不就是换了个版本号的API文档搬运工&#xff1f;但我在带三个独立游戏团队落地项目时发现&#xff0c;真正…...

别再死记硬背真值表了!用Logsim动态仿真,直观理解RS和D触发器的工作原理

动态仿真教学&#xff1a;用Logsim破解RS与D触发器的核心原理 当你第一次翻开数字电路教材&#xff0c;看到那些密密麻麻的真值表和抽象的逻辑符号时&#xff0c;是否感到一阵眩晕&#xff1f;传统教学往往要求学生死记硬背各种触发器的状态转换规则&#xff0c;却很少解释这些…...

一句指令就能完成跨系统操作?——2026企业级智能体技术路径深度拆解

站在2026年的时间节点回望&#xff0c;企业数字化转型已从“流程驱动”全面转向“智能体驱动”。过去&#xff0c;跨系统操作往往意味着繁杂的API对接或编写脆弱的自动化脚本。而今&#xff0c;以实在智能推出的实在Agent为代表的方案&#xff0c;实现了“一句指令&#xff0c;…...

企业AI编程效率提升:2026最新权威AI编程工具必看

企业AI编程效率提升&#xff1a;2026最新权威AI编程工具必看开篇“企业研发团队效率低下&#xff0c;核心项目交付周期长&#xff0c;如何通过AI编程工具缩短开发周期、提升ROI&#xff1f;”“企业部署AI编程工具&#xff0c;如何兼顾安全合规、代码质量与开发效率&#xff0c…...

让薪酬跟着人才走:国企核心人才激励保留的五个管理命题

当前&#xff0c;国有企业三项制度改革已进入攻坚深化期。劳动合同签订率、岗位说明书覆盖率、绩效考核实施率等量化指标普遍处于高位&#xff0c;制度框架的“四梁八柱”已基本确立。但在改革向纵深推进过程中&#xff0c;核心人才流失问题却时有发生。据调研反映&#xff0c;…...

Kafka 2.8.0到3.4.0滚动升级实录:单副本Topic的可用性挑战与ISR列表监控

Kafka集群升级中的单副本Topic风险治理&#xff1a;ISR监控与高可用实践 引言 在分布式消息系统的世界里&#xff0c;Kafka凭借其高吞吐、低延迟的特性成为企业级数据管道的首选。但当运维团队面临版本升级时&#xff0c;那些隐藏在配置细节中的"定时炸弹"往往成为…...

AI编程助手的真实效能:20-30%增效背后的工程逻辑与落地框架

1. 这不是泼冷水&#xff0c;而是把被营销话术遮住的显微镜递给你 “AI coding agent will boost your productivity 10x”——这句话过去两年在技术社区、招聘JD、内部OKR甚至投资人尽调材料里反复刷屏&#xff0c;像一句不容置疑的技术咒语。我本人从2023年Q4开始&#xff0c…...

洛雪音乐音源完全指南:如何免费获取全网高品质音乐资源

洛雪音乐音源完全指南&#xff1a;如何免费获取全网高品质音乐资源 【免费下载链接】lxmusic- lxmusic(洛雪音乐)全网最新最全音源 项目地址: https://gitcode.com/gh_mirrors/lx/lxmusic- 作为音乐爱好者&#xff0c;你是否厌倦了在不同音乐平台间来回切换只为找到一首…...