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

python matlplotlib/seaborn 绘制曲线的平均值标准差阴影图

1. seaborn

旧版本(0.8.1)中使用tsplot,新版本中使用lineplot
直线代表均值,阴影代表mean±std(带有置信区间,参数ci)

import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
sns.set()def smooth(data, wd=2):""":param data: ndarray,一维或二维:param wd::return:"""if not (isinstance(wd, int) and wd > 0):raise ValueError('wd must be a positive integer')elif 1 == wd:return dataelse:weight = np.ones(wd) / wdif 1 == data.ndim:return np.convolve(weight, data, "same")elif 2 == data.ndim:smooth_data = []for d in data:d = np.convolve(weight, d, "same")smooth_data.append(d)return np.array(smooth_data)else:raise ValueError('data must be a one-dimensional or two-dimensional ndarray')def get_data():returns1 = np.random.random((4, 100))        # 算法1,四个随机种子returns2 = np.random.random((4, 100)) + 1returns3 = np.random.random((4, 100)) + 2returns1 = smooth(returns1, 2)returns2 = smooth(returns2, 2)returns3 = smooth(returns3, 2)return returns1, returns2, returns3np.random.seed(11)
data = get_data()
label = ['algo1', 'algo2', 'algo3']
df=[]
ax = range(10, 100+10)   # x轴刻度
for i in range(len(data)):df.append(pd.DataFrame(data[i], columns=ax).melt(var_name='episode',value_name='return'))df[i]['algo'] = label[i]
df=pd.concat(df, ignore_index=True)
# print(df)
sns.lineplot(x="episode", y="return", hue="algo", data=df)
plt.legend(loc='upper right')
# 'best', 'upper right', 'upper left', 'lower left', 'lower right',
#             'right', 'center left', 'center , right', 'lower center', 'upper center', 'center')
plt.title("")
plt.show()#
# import seaborn as sns
# import matplotlib.pyplot as plt
# fmri = sns.load_dataset("fmri")
# fmri.head()
#
# sns.lineplot(data=fmri, x="timepoint", y="signal", hue="event")
# plt.show()

不进行平滑处理
在这里插入图片描述
平滑处理
在这里插入图片描述

matplotlib

画mean+/- standard deviation(std)的曲线图。

  1. 导入需要的库:matplotlib

  2. 用matplotlib.pyplot画均值曲线(图里的实线)

  3. 根据方差,用“fill_between”命令设定要填充曲线的上下限

  4. 用“fill”命令填充(图里的阴影部分)

(曲线颜色及线条粗细,填充颜色以及透明度都是在命令名后的括号里定义)
展示的结果图里画了三组数据,每组数据画法相同

在这里插入图片描述
在这里插入图片描述

相关文章:

python matlplotlib/seaborn 绘制曲线的平均值标准差阴影图

1. seaborn 旧版本(0.8.1)中使用tsplot,新版本中使用lineplot 直线代表均值,阴影代表meanstd(带有置信区间,参数ci) import seaborn as sns import matplotlib.pyplot as plt import numpy as np import pandas as p…...

【Linux基础IO篇】深入理解文件系统、动静态库

【Linux基础IO篇】深入理解文件系统、动静态库 目录 【Linux基础IO篇】深入理解文件系统、动静态库再次理解文件系统操作系统内存管理模块(基础)操作系统如何管理内存 Linux中task_struct源码结构 动态库和静态库动静态库介绍:生成静态库库搜…...

flink 写入 starrocks 报错 too many filtered rows attachment

可能原因1 把你starrocks中DDL里的varchar(...) 先修改为STRING. 一般是因为字段超出定义的长度. 可能原因2 csv里有脏数据 导致3列被切分为4列 ....PRIMARY KEY (id) NOT ENFORCED ) WITH (connector starrocks,jdbc-url ...,username ...,password ...,database-nam…...

Windows 安装 Maven

目录 安装 JDK下载 Maven配置阿里云镜像配置环境变量 安装 JDK Windows 安装 JDK 下载 Maven 下载地址:https://maven.apache.org/download.cgi 下载 apache-maven-3.9.5-bin.zip 到本地解压到 D:\Software\apache-maven-3.9.5 配置阿里云镜像 配置阿里云远程仓…...

一文读懂关于IPv6的那些事

作为下一代互联网的战略发展方向,我国正加速IPv6的升级改造,目前从网络基础设施如运营商骨干网、城域网到互联网服务商如各类云服务以及包括手机、电脑、路由器等终端设备厂商都开始支持IPv6网络。那么到底什么是IPv6?IPv6有哪些特点呢&#…...

数据结构—队列的实现

前言:上次我们已经学习了数据结构中一个重要的线性表—栈,那么我们这一次就来学习另外一个重要的线性表—队列。 目录: 一、 队列的概念 二、 队列的实现: 1.队列的创建 三、 队列的操作 1.初始化队列 2.队尾入队列 3.队头出队列…...

Linux_shell脚本中的stty

shell脚本中的stty stty是用于配置终端(tty)设置的命令。它允许用户查看和修改与终端相关的各种参数。下面是stty命令的一些常见用法和参数: 基本语法: stty [OPTION] [SETTING]常见选项和参数: 基本设置&#xff1…...

HTML转PDF模板

一、准备pom依赖 <dependency><groupId>com.itextpdf</groupId><artifactId>html2pdf</artifactId><version>1.0.2</version></dependency><dependency><groupId>org.freemarker</groupId><artifactId&g…...

Clickhouse学习笔记(14)—— Clickhouse监控

ClickHouse 运行时会将一些个自身的运行状态记录到众多系统表中&#xff0c;如下所示&#xff1a; 为了直观方便地监控ck的运行情况&#xff0c;使用Prometheus Grafana 的组合来进行监控 Prometheus 负责收集各类系统的运行指标&#xff1b;Grafana 负责可视化 Prometheus&a…...

Vue3 + Three.js + gltf-pipeline大型园区场景渲染与3D业务

在非使用unity作为3D渲染方案的前提下&#xff0c;对与目前web开发者比较友好的除了canvas场景需要的2D babylon.js&#xff0c;fabric.js, Three.js是目前针对于jsWeb用户最直接且比较友好的3D引擎方案了。 准备工作&#xff1a; 1.明确需要用的场景方案都有那些&#xff0c;模…...

基于FPGA的PS端的Si5340的控制

1、功能 Si5340/41-D可以输出任意频率&#xff0c;当然有范围&#xff0c;100Hz1GHz。外部输入为24M或者4854M的XTAL&#xff0c;VCO在13500~14256Mhz之间&#xff0c;控制接口采用IIC或者SPI。 芯片架构图 2、IIC控制方式 3、直接上控制代码 使用米联客ZU3EG&#xff0c;将…...

安装 Lua 的 HTTP 库

首先&#xff0c;你需要安装 Lua 的 HTTP 库。可以使用 LuaRocks 来安装。以下是安装命令&#xff1a; luarocks install http然后&#xff0c;你可以使用以下代码来爬取网页内容&#xff1a; local http require http-- 设置代理信息 http.set_proxy(jshk.com.cn)-- 网页UR…...

Redis解决缓存问题

目录 一、引言二、缓存三、Redis缓存四、缓存一致性1.缓存更新策略2.主动更新 五、缓存穿透六、缓存雪崩七、缓存击穿1.基于互斥锁解决具体业务2.基于逻辑过期解决具体业务 一、引言 在一些大型的网站中会有十分庞大的用户访问流量&#xff0c;而过多的用户访问对我们的MySQL数…...

七个合法学习黑客技术的网站,让你从萌新成为大佬

大家好我是若风&#xff0c;一个8年网络安全攻防经验的白帽黑客。 合法的学习网站&#xff0c;以下这些网站&#xff0c;虽说不上全方位的满足你的需求&#xff0c;但是大部分也都能。能带你了解到黑客有关的技术&#xff0c;视频&#xff0c;电子书&#xff0c;实践&#xff0…...

【数据结构】面试OJ题——带环链表(数学推论)

目录 1.环形链表Ⅰ ​编辑 思路 &#xff1a; 思路拓展 问题一&#xff1a; 问题二&#xff1a; 总结&#xff1a; 问题三&#xff1a; 证明总结第三点 总结&#xff1a; 2. 环形链表Ⅱ 思路一 思路二 3.相交链表 思路&#xff1a; 1.环形链表Ⅰ 141. 环形链…...

PostgreSQL中pg_ctl工具的使用

pg_ctl工具有以下功能&#xff1a; &#xff08;1&#xff09;初始化postgresql数据库实例 &#xff08;2&#xff09;启动、终止或重启postgresql数据库服务 &#xff08;3&#xff09;查看postgresql数据库服务的状态 &#xff08;4&#xff09;让数据库实例重新读取配置…...

深入理解Kafka3.6.0的核心概念,搭建与使用

Kafka是最初由Linkedin公司开发&#xff0c;是一个分布式、支持分区的&#xff08;partition&#xff09;、多副本的&#xff08;replica&#xff09;&#xff0c;基于zookeeper协调的分布式消息系统&#xff0c;它的最大的特性就是可以实时的处理大量数据以满足各种需求场景&a…...

【python】编程题小代码

空心题&#xff08;平行四边形&#xff09; layer int(input("请输入你要打印的行数:")) for i in range(1,layer // 2 2): space_num layer - i for j in range(0,space_num): print(" ",end "") star_num 2 * i - 1 for j in range(0,sta…...

抖音小程序开发全攻略:如何规划项目和选择合适的开发团队

在数字化时代&#xff0c;抖音小程序成为企业推广和服务的重要渠道。本文将为您提供抖音小程序开发的全面攻略&#xff0c;重点介绍如何规划项目和选择合适的开发团队&#xff0c;并附有一些关键的技术代码示例。 1. 项目规划 在开始抖音小程序开发之前&#xff0c;详细的项…...

PSP - 蛋白质复合物结构预测 模版配对(Template Pair) 逻辑的特征分析

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/134328447 在 蛋白质复合物结构预测 的过程中&#xff0c;模版 (Template) 起到重要作用&#xff0c;提供预测结果的关于三维结构的先验信息&…...

硬件答辩问题总结

一、电源纹波是什么&#xff0c;为什么LDO的小&#xff0c;DCDC的大1.电源纹波电源纹波 是指直流电源输出电压上叠加的 交流波动成分&#xff0c;表现为电压在理想直流值附近上下波动。2.LDO 纹波小原理LDO 内部是一个 调整管&#xff08;可变电阻&#xff09; 串联在输入和输出…...

51单片机驱动ST7735S彩屏避坑指南:从5秒刷屏到流畅贪吃蛇的优化实战

51单片机驱动ST7735S彩屏性能优化实战&#xff1a;从卡顿到流畅游戏的蜕变之路当一块128x160分辨率的ST7735S彩屏遇上传统的51单片机&#xff0c;这种组合看似矛盾却又充满挑战。许多开发者初次尝试时会发现&#xff0c;原本在STM32等平台上运行流畅的显示驱动&#xff0c;移植…...

物联网与云技术赋能咖啡后处理:CeriTech 的实时监控系统实践

1. 项目概述&#xff1a;用物联网与云技术重塑咖啡后处理在印尼的咖啡农场里&#xff0c;传统的发酵与干燥过程很大程度上依赖“感觉”和“经验”。一位有经验的农人可能会用手触摸、用鼻子闻&#xff0c;或者根据天气和日照时间来估算发酵是否完成、干燥是否均匀。这种方法固然…...

LangGraph状态机工程:构建复杂AI工作流的完整指南

传统RAG&#xff08;检索增强生成&#xff09;在处理简单的"单跳"问题时表现良好——“文章里提到了什么” “这个概念是什么意思”——但当问题涉及多个实体之间的关系、需要跨多个文档推理时&#xff0c;传统RAG就显得力不从心。GraphRAG&#xff08;Graph-based R…...

Hindsight测试策略:单元测试、集成测试和端到端测试

Hindsight测试策略&#xff1a;单元测试、集成测试和端到端测试 【免费下载链接】hindsight Hindsight: Agent Memory That Learns 项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsight Hindsight作为一款专注于Agent Memory的开源项目&#xff0c;其可…...

基于Netburner NANO54415构建工业级嵌入式Web服务器:从硬件选型到广域监控实战

1. 项目概述&#xff1a;一个为广域与本地监控而生的嵌入式Web服务器如果你正在寻找一个能部署在野外、工厂角落或者任何需要远程数据采集与控制场景下的嵌入式Web服务器方案&#xff0c;并且对市面上那些要么性能孱弱、要么开发门槛极高的开发板感到厌倦&#xff0c;那么这个基…...

ShrinkBox后门攻击:如何让自动驾驶模型“看错”距离,威胁ML-ADAS安全

1. 项目概述在自动驾驶和高级驾驶辅助系统&#xff08;ADAS&#xff09;领域&#xff0c;基于机器学习的目标检测模型&#xff0c;如YOLO系列&#xff0c;已成为感知环境、实现碰撞预警的核心组件。这些模型通过实时识别和定位道路上的车辆、行人等目标&#xff0c;为后续的距离…...

InVideo插件深度解析:如何在Unreal Engine中实现高效视频流播放与录制

InVideo插件深度解析&#xff1a;如何在Unreal Engine中实现高效视频流播放与录制 【免费下载链接】InVideo 基于UE4实现的rtsp的视频播放插件 项目地址: https://gitcode.com/gh_mirrors/in/InVideo InVideo是一个基于Unreal Engine 5开发的RTSP视频播放插件&#xff0…...

DAIR-V2X-V数据集深度评测:与KITTI、nuScenes比,它到底强在哪?

DAIR-V2X-V数据集深度评测&#xff1a;与KITTI、nuScenes比&#xff0c;它到底强在哪&#xff1f; 当技术团队着手开发面向中国道路的自动驾驶系统时&#xff0c;数据集的选择往往成为第一个关键决策点。过去十年间&#xff0c;KITTI和nuScenes等国际数据集一直是行业标杆&…...

LeaguePrank:5分钟打造个性化英雄联盟客户端,段位头像随心换!

LeaguePrank&#xff1a;5分钟打造个性化英雄联盟客户端&#xff0c;段位头像随心换&#xff01; 【免费下载链接】LeaguePrank 项目地址: https://gitcode.com/gh_mirrors/le/LeaguePrank 厌倦了千篇一律的英雄联盟客户端界面&#xff1f;想向好友展示王者段位却还在白…...