MATLAB画散点密度图(附代码和测试数据的压缩包)
1. 有关 Matlab 获取代码关注WZZHHH回复关键词,或者咸鱼关注:WZZHHH123
怀俄明探空站数据解算PWV和Tm:怀俄明探空站数据解算PWV和Tm
怀俄明多线程下载探空站数据(包括检查和下载遗漏数据的代码):怀俄明多线程下载
对IGRAv2进行质量控制得到PWV和Tm的 matlab 代码:IGRAv2进行质量控制得到PWV和Tm
算 IGRAv2 探空站的 Tm 和 PWV:IGRAv2计算Tm和PWV
提取探空站 IGRAv2 全部数据:
ERA5 解算合集(温度、气压、PWV、水汽压和 Tm)代码获取:ERA5合集
MATLAB画散点密度图
代码、测试数据的压缩包在文末,可自行下载测试出图效果
散点误差图出图效果

代码如下
具体使用,请自行修改
function scatter_plot(x,y,derror)
% 点状密度图
% 根据测试数据画的,实际应用自己修改
% --------------------改变密度大小------------------
numbins = 50;
% --------------------------------------------------X =x;
Y =y;
% 找到最大值最小值
MaxSP=max(x);MaxV=max(y);Maxi=1.1*max(MaxSP,MaxV);[values, centers] = hist3([X Y], [numbins numbins]);
centers_X = centers{1,1};
centers_Y = centers{1,2};
binsize_X = abs(centers_X(2) - centers_X(1)) / 2;
binsize_Y = abs(centers_Y(2) - centers_Y(1)) / 2;
bins_X = zeros(numbins, 2);
bins_Y = zeros(numbins, 2);
for i = 1:numbinsbins_X(i, 1) = centers_X(i) - binsize_X;bins_X(i, 2) = centers_X(i) + binsize_X;bins_Y(i, 1) = centers_Y(i) - binsize_Y;bins_Y(i, 2) = centers_Y(i) + binsize_Y;
end
scatter_COL = zeros(length(X), 1);
onepercent = round(length(X) / 100);
for i = 1:length(X)if (mod(i,onepercent) == 0)fprintf('.');endlast_higher_X = NaN;id_X = NaN;c_X = X(i);last_lower_X = find(c_X >= bins_X(:,1));if (~isempty(last_lower_X))last_lower_X = last_lower_X(end);elselast_higher_X = find(c_X <= bins_X(:,2));if (~isempty(last_higher_X))last_higher_X = last_higher_X(1);endendif (~isnan(last_lower_X))id_X = last_lower_X;elseif (~isnan(last_higher_X))id_X = last_higher_X;endendlast_higher_Y = NaN;id_Y = NaN;c_Y = Y(i);last_lower_Y = find(c_Y >= bins_Y(:,1));if (~isempty(last_lower_Y))last_lower_Y = last_lower_Y(end);elselast_higher_Y = find(c_Y <= bins_Y(:,2));if (~isempty(last_higher_Y))last_higher_Y = last_higher_Y(1);endendif (~isnan(last_lower_Y))id_Y = last_lower_Y;elseif (~isnan(last_higher_Y))id_Y = last_higher_Y;endendscatter_COL(i) = values(id_X, id_Y);
end% 拟合曲线
a=polyfit(x,y,1);
ax=linspace(0,Maxi+10,2000);
ay=a(1)*ax+a(2);Str_yx=['Y = ',num2str(round(a(1),2)),'*X +',num2str(round(a(2),2))];scatter(x, y, 20, scatter_COL, '.' );
hold oncolormap('jet');
colorbar;xlabel('GNSS-PWV/mm','FontSize',12,'FontName','Times New Roman');
ylabel('ERA5-PWV/mm','FontSize',12,'FontName','Times New Roman');bx = linspace(0,120,2000);% 设置xy轴的界限
% xlim([0 120]);ylim([0 120]);% 把误差表示在图上,位置根据自己需要改,我这是根据测试数据填的
text(5,115,Str_yx,'FontSize',12,'FontName','Times New Roman')
text(5,107,['Bias = ',num2str(round(100*derror(1))/100,'%.2f')],'FontSize',12,'FontName','Times New Roman')
text(5,99,['RMSE = ',num2str(round(100*derror(2))/100,'%.2f')],'FontSize',12,'FontName','Times New Roman')
text(5,91,['Cor = ',num2str(derror(3),'%.2f')],'FontSize',12,'FontName','Times New Roman')% 画拟合曲线
plot(ax,ay,'r')
hold on% 画对角线
plot(bx,bx,'k');
hold ontitle('测试数据','FontSize',12)
box on
grid onset(gca,'LineWidth',1.2)
end
压缩包地址如下:
压缩包里面的内容:

压缩包地址:
关注: WZZHHH,回复 MATLAB画散点密度图
>.< 有问题,请你问你的老师,师兄师姐。我也挺忙的。
相关文章:
MATLAB画散点密度图(附代码和测试数据的压缩包)
1. 有关 Matlab 获取代码关注WZZHHH回复关键词,或者咸鱼关注:WZZHHH123 怀俄明探空站数据解算PWV和Tm:怀俄明探空站数据解算PWV和Tm 怀俄明多线程下载探空站数据(包括检查和下载遗漏数据的代码):怀俄明多线…...
SSH配置命令
前置环境:端口配置IP地址,client和server之间可ping通,此处省略 server端: 开启stelnet [Huawei]stelnet server enable Info: Succeeded in starting the Stelnet server. aaa模式相关配置 #进入aaa模式 [Huawei]aaa # 添加用户admin和…...
谷粒商城实战记录-虚拟机开启密码认证登录
文章目录 一,虚拟机无法用用户名密码登录二,解决方案1,修改配置2,重启sshd服务3,测试SSH登录注意事项结论 参考文献 一,虚拟机无法用用户名密码登录 当使用Vagrant创建和管理虚拟机时,通常会通…...
C语言程序设计-[1] 基础语法
1、字符集 字符集:是ASCII字符集的一个子集。 注:基本上就是电脑键盘可以输入的一些字符。 2、标识符 标识符:用来命名程序中的一些实体,如:变量、常量、函数、数组名、类型名、文件名等。由一个或多个字符组成。 —…...
JavaSE第11篇:设计模式
一、创建型模式 1、工厂方法模式 2、抽象工厂模式 3、单例模式singleton /*** 单例* 饿汉式(线程安全的):在加载类的时候就会创建类的单例,并保存在类中。* 1.定义类变量实例并直接实例化,在类加载的时候就完成了实例化并保存在类中;* 2.定义无参构造…...
【Unity Shader】切线空间下计算凹凸映射
// Upgrade NOTE: replaced mul(UNITY_MATRIX_MVP,*) with UnityObjectToClipPos(*)Shader "Unlit/NormalTangent" {Properties{_Color("Color Tint", Color) (1, 1, 1, 1)_MainTex("Main Tex", 2D) "While"{}//法线纹理_BumpMap(&q…...
解决Ubuntu/Kali手动创建的启动器在dock上没有图标,且不能“添加到dock中“的问题
文章目录 问题描述问题解决解决方案 1 | 添加StartupWMClass字段解决方案 2 | 重命名文件名 如何获取 WM 值?方式 1 | xprop 命令方式 2 | 直接查看 问题描述 这个启动器无论是在菜单还是桌面都是正常的,只有在dock中没有图标,且不像其他APP…...
【Android】数据持久化——数据存储
持久化技术简介 在你打开完成了一份PPT之后关闭程序,再次打开肯定是希望之前的内容还存在在电脑上,一打开PPT,之前的内容就自动出现了。数据持久化就是将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或电脑关机的情况下…...
如何通过谷歌外链快速增加网站流量?
利用谷歌外链提升流量的方法非常直接,但实际上,外链影响的是关键词排名,关键词排名提升了,自然就会有流量,所以谷歌外链不是直接能提升网站流量,而是间接的,下面,我会详细介绍几种有…...
vLLMcuda安装笔记
1. 引言 最近在部署Qwen模型时,文档上有提到强烈建议用vLLM来部署模型,按照公开的性能测试数据,用vLLM部署Qwen模型的文本推理速度要比transformers部署快3~4倍。带着这个好奇就开始安装尝试,但试下来这个安装过程并没有那么顺利…...
C++入门基本语法(2)
一、引用 1、基本概念与定义 引用不是新定义一个变量,而是给已存在的变量起一个别名,编译器不会为引用变量开辟内存空间,它和它所引用的变量公用同一块内存空间; 引用的写法:变量类型& 引用别名 变量ÿ…...
Internet Download Manager(IDM)2024中文版本有哪些新功能?6.42版本功能介绍
1. Internet Download Manager(IDM)是一款功能强大的下载管理器,支持所有流行的浏览器,并可提升下载速度高达5倍。 2. IDM具有智能下载逻辑加速器,可以设置文件下载优先级、分块下载等,提高下载效率。 IDM…...
深入理解 C 语言中的联合体
目录 引言 一、 联合体的定义与基本用法 1.联合体的定义 2.基本用法 二、 联合体与结构体的区别 1.结构体 2.联合体 3.对比 三、联合体的优势 1. 节省内存 2. 提高效率 3. 代码简洁性 四、联合体的存储细节 1.内存对齐 2.大小计算 五、联合体的高级用法 1.匿…...
OpenCV||超详细的几何变换
2D图像几何变换的33矩阵: 图像常见的几何变换: 图像来源:《OpenCV 4.5计算机视觉开发实战:基于Python》作者:朱文伟 李建英; 1. 平移(Translation) 在OpenCV中,平移不是…...
网络程序设计基础概述
文章目录 前言一、网络程序设计基础二、网络协议 1.IP协议2.TCP与UDP协议三、端口与套接字总结 前言 网络程序设计编写的是与其他计算机进行通信的程序代码。Java将网络程序所需要的东西封装成了不同的类。开发者只需要创建这些类的对象,调用相应的方法,…...
MySQL:数据库用户
数据库用户 在关系型数据库管理系统中,数据库用户(USER)是指具有特定权限和访问权限的登录账户。每个用户都有自己的用户名和密码,以便系统可以通过认证来识别他们的身份。数据库用户可以登录数据库,在其中执行各种类…...
用TensorFlow训练自己的第一个模型
现在学AI的一个优势就是:前人栽树后人乘凉,很多资料都已完善,而且有很多很棒的开源作品可以学习,感谢大佬们 项目 项目源码地址 视频教程地址 我在大佬的基础上基于此模型还加上了根据特征值缓存进行快速识别的方法,…...
MySQL数据库入门基础知识 【1】推荐
数据库就是储存和管理数据的仓库,对数据进行增删改查操作,其本质是一个软件。 首先数据有两种,一种是关系型数据库,另一种是非关系型数据库。 关系型数据库是以表的形式来存储数据,表和表之间可以有很多复杂的关系&a…...
Anaconda下的 jupyter notebook安装及使用
安装 打开Anaconda Powershell Prompt或Anconda Prompt 输入命令conda install jupyter notebook进行安装 启动 切换到工作目录,输入命令jupyter notebook等待浏览器打开网页 命令行启动jupyter notebook的链接复制到浏览器同样可以打开jupyter notebook 在Ancon…...
C语言初阶(11)
1.结构体定义 结构体就是一群数据类型的集合体。这些数据类型被称为成员变量。结构的成员可以是标量、数组、指针,甚至是其他结构体。 2.结构体的声明和结构体变量命名与初始化 结构体声明由以下结构组成 struct stu {char name[12];int age; }; 结构体命名有两…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
《用户共鸣指数(E)驱动品牌大模型种草:如何抢占大模型搜索结果情感高地》
在注意力分散、内容高度同质化的时代,情感连接已成为品牌破圈的关键通道。我们在服务大量品牌客户的过程中发现,消费者对内容的“有感”程度,正日益成为影响品牌传播效率与转化率的核心变量。在生成式AI驱动的内容生成与推荐环境中࿰…...
el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
