- 博客(28)
- 收藏
- 关注
原创 MATLAB画图常用 定式语句(长期更新)
使用MATLAB画图,为了获得高质量的画图结果,常需要用绘图语句(部分语句来自网络,仅供学习)进行指定。这些语句一般是固定的,在实际绘图可以按需修改,不必每次都。
2023-04-24 17:08:56
521
原创 数据预处理的几种形式(转载)
正向化的计算公式为:(X - Min) / (Max - Min),当某数据为最小值时,归一化后为0;计算公式为:(X - Min) / (Max - Min),当某数据刚好为最小值时,归一化后为0;计算公式为:X / sqrt(Sum(X^2)),即将每个数据除以其所在列的所有数据的平方和的平方根。逆向化的计算公式为:(Max - X) / (Max - Min),当某数据为最小值时,归一化后为1;计算公式为:X / 第一个非空数据,即以数据中的第一个非空数据作为参照标准,其余数据都除以该值。
2025-06-04 20:57:51
1266
原创 连续小波变换【A Practical Guide to Wavelet Analysis, Christopher Torrence and Gilbert P. Compo】学习笔记(长期更新完善)
在本博客里介绍的连续小波变换CWT,是海洋、大气等地学领域常用的MATLAB工具包(也有Fortran Python等语言版本)。该工具包由美国科罗拉多大学的Christopher Torrence and Gilbert P. Compo于1998年开发,该工具包介绍了海洋等领域小波变换的基本概念与应用。本博客意在梳理该论文的一些基本概念,适合海洋等地学领域参考(本人无系统专业的信号处理学术背景,如有错误请联系我改正)。
2025-04-22 22:58:40
1076
原创 MATLAB 数值对应颜色 数值用不同的颜色区分示例博客
当数据点多时,将需要填色的数据范围划分为一个数组(下文的mR250),填色的数据范围不一定非要是因变量的值域,然后找到数据点与mR250中最接近的行数,此行数对应的是RGB矩阵行数对应的颜色。现在想做的是:每一个数据点根据他的因变量点,用不同的颜色区分因变量大小。
2024-03-10 11:04:00
1856
原创 MATLAB 海洋气象平滑smoothing问题 概念+公式+代码实现
在海洋与大气研究中,对于时间序列经常有平滑smoothing的处理。本文尝试总结部分概念,并对其中的公式使用MATLAB代码实现。某城市1951-1996年的降水量。
2023-10-12 22:24:23
364
原创 MATLAB 自编实用小函数(长期更新)
p(1) 是斜率,p(2) 是线性预测变量的截距 xo*p1+p2=Yo。已知两点的坐标x y Yo在两点y之间 用线性插值计算xo点。
2023-10-10 16:30:14
282
原创 MATLAB 计算包含缺测值序列的均方根误差RMSE (使用isfinite函数找到一维数组中非缺测元素的位置)
TF = isfinite(A) 返回一个逻辑数组,其中的 1 (true) 对应数组 A 的有限元素,0 (false) 对应无限或 NaN 元素。如果 A 包含复数,则 isfinite(A) 中的 1 对应实部和虚部均为有限值的元素,0 对应实部或虚部中存在无限值或 NaN 值的元素。但是当一维序列Ypre与Yobs存在缺测值NaN时,此RMSE不能由上式直接计算。必须先找到他们同一位置都不缺测的数据点,即以下代码的ids。一维序列不含缺测值时,由RMSE的定义可以计算RMSE。
2023-10-09 11:01:32
966
原创 M_Map m_contourf m_shadedrelief m_etopo2实例(caxis colormap)
M_Map 地形水深可视化的三个函数使用示例
2022-09-23 10:46:58
6104
3
原创 MATLAB 绘制颜色图的 几个函数 colormap caxis colorbar shading+pcolor用法记录
MATLAB颜色有关函数
2022-08-15 12:11:22
26531
原创 MATLAB多个子图 用一个 colorbar
%% 多个子图使用同一个colorbar % [left bottom width height] ps42 = zeros(8,4);ps42(:,3) = 0.44;ps42(:,4) = 0.20;ps42([7 8],2) = 0.08;ps42([5 6],2) = 0.30;ps42([3 4],2) = 0.52;ps42([1 2],2) = 0.74;ps42([1 3 5 7],1) = 0.05;ps42([2 4 6 8],1) = 0.54;pscol = [0
2022-05-07 10:05:44
4530
1
原创 MATLAB text legend title 输入减号 minus 符号的做法(附 MATLAB latex希腊字母等特殊符号)
MATLAB 绘图时 需要用 text legend title 等命令 写上文字,然而,一些常见用法达不到指定的效果(特别是MATLAB的Minus负号(减号)、Hyphen连字符、Dash破折号容易弄混 达不到指定的效果):对于legend而言,需指定interpreter这一选项解决这一问题:% 用法1 'interpreter','tex'figure()hold onplot(tt,Y.D2i-0.3,'r-','linewidth',.5) % mean(Y.D2i)
2022-04-26 11:59:33
6941
原创 MATLAB fill patch 填充 图片某一区域 示例 代码
% patch 函数的填充示例代码aa = 0:50;ia1 = 2:8; ia2 = 20:30;bb = 8*exp(-aa/100);figure()plot(aa,bb);hold onab = patch([aa(ia1),fliplr(aa(ia1))],[8*ones(1,length(ia1)),0*ones(1,length(ia1))],'r','FaceAlpha',.3)ab.EdgeAlpha = 0; ab2 = patch([aa(ia2),fliplr(
2022-04-24 09:56:27
1967
原创 MATLAB时间坐标轴 时间节点绘制 一个简易例子
MATLAB里面,绘制时间间隔为1小时时间序列时,需要在几个关键时间节点(xtick)标注出相应地时间标签(xticklabel)。关键时间节点比如是每个月的1号的0点,由于每个月的天数不同,这些时间节点的间隔很有可能不一定相同,所以要找到确切精确时间点在数值向量中的位置MATLAB的figure的自变量x可以选为时间(datetime类型),也可以选为数值向量。但在绘制一些二维图时(如pcolor),自变量x目前只能支持为数值向量,这就需要准确识别出关键时间节点在数值向量中的准确位置。x = 1:87
2022-04-13 10:53:50
3286
转载 MATLAB 由figure文件获取原始数据
来源于MATLAB社区的提问 [How do I extract data from MATLAB figures?]其中一个简单可行的方法是open('example.fig');a = get(gca,'Children');xdata = get(a, 'XData');ydata = get(a, 'YData');zdata = get(a, 'ZData');其他方法见网址 https://www.mathworks.com/matlabcentral/answers/10068
2022-03-23 19:50:48
373
原创 MATLAB 使用 subplot 确定 子图的大小与相对位置 subplot(‘Position‘,pos)
使用 subplot的 position 用法绘制子图时,可以使用 tight_subplot 函数,这里MATLAB 官方的subplot 函数也能达到相同的效果。subplot(‘Position’,pos) creates axes in the custom position specified by pos. Use this option to position a subplot that does not align with grid positions. Specify pos
2022-01-10 10:30:35
8614
原创 频率单位转换 hz cpd cph 分潮简写
频率的单位转换:1 hz = 1/s; 3hz = 3/s1cph = 1/1h=1/3600s, 因此 3600cph = 1/s = 1hz ; 1cph = 1/3600 hz1cpd = 1/24h = 1/24cph = 1/(3600*24)s
2022-01-06 09:58:40
5288
1
原创 MATLAB contour 和 contourf 函数 简单例子
MATLAB contour 和 contourf 函数 简单例子x = -10:0.1:10; y = 0:0.1:5; % 横向201个数 纵向51个数[X,Y] = meshgrid(x,y); % meshgrid 函数 使得 向量x生成y行的x(每一行都是x,共y行)Z = X+Y ; % 注意Z的左上角是该矩阵最小值,右下角为最大值figure()subplot(2,2,1); contour(x,y,Z) % Z的矩阵左下角是最小值,右上角最大值
2021-11-15 20:54:05
3863
原创 MATLAB polarplot一个简单例子
MATLAB 极坐标polarplot函数示例% MATLAB:不推荐使用 polar函数。请改用 polarplot。figure() polarplot(deg2rad([0:30:360]),1:2:25,'o') % 注意把角度转换为弧度的函数 deg2rad函数rlim([0 26]) % 将 r 轴范围更改为值介于 0 和 26 之间。然后,更改每个刻度线旁边显示的标签。rticks([0 5 10 15 20 25])
2021-11-15 20:08:03
1761
原创 MATLAB 时间变量 和 常用时间处理函数 datetime datestr datevec datenum
% 月份缩写mon = {‘Jan’;‘Feb’;‘Mar’;‘Apr’;‘May’;‘Jun’;‘Jul’;‘Aug’;‘Sep’;‘Oct’;‘Nov’;‘Dec’};
2021-11-14 15:45:41
3799
原创 如何让每一张MATLAB输出图片的大小 与某一张图相同+MATLAB的Figure的常用属性
同一台设备上,让每一张MATLAB输出图片的大小 与某一张图相同首先手动拉伸MATLAB的默认figure的右下角,调整到满意的长宽比,大小。按照如下步骤即可调整到同一大小。具体参数说明帮助文档[position]pos = get(gcf,'position') % 获取当前调整后的figure大小figure() % 创造一张新图set(gcf,'position',pos) % 调整新图到指定图的大小...
2021-05-23 16:27:17
7221
原创 MATLAB 线性拟合直线示例 + MATLAB线性拟合中文文档(决定系数R^2公式与解释 与 带惩罚项的修改R^2)
MATLAB 线性拟合直线计算斜率示例+MATLAB官方文档 决定系数R^2公式与解释 与 带惩罚项的修改R^2
2021-04-28 14:53:54
3405
1
原创 MATLAB cwt连续小波变换 绘制小波振幅谱(影响锥coi)的三个函数示例(cwt contourf pcolor)
part 0 构造时间序列,并使用cwt函数计算小波系数矩阵dt = 1; % 一小时一个数t = 0:dt:499;Fs = 1/dt;y = [10*sin(pi*(0:200)/5),5*cos(pi*(201:400)/8),1*sin(pi*(401:499)/10)];y = y + 1*rand(size(t));zq = 2:2:20; % 标注的周期%% 以下amorlet小波基为例 计算小波系数%[w
2021-04-27 21:10:31
6917
3
原创 2021-04-20 m_map的几个地形水深数据库安装步骤
MATLAB的地图工具包m_map的几个步骤(GSHHS TOPO )GSHHS海岸线数据库,在m_map的官方页面https://www.eoas.ubc.ca/~rich/map.html的userguide页面(https://www.eoas.ubc.ca/~rich/mapug.html#p9)指出了m_map可以安装高精度地形/水深数据库(一是Sandwell and Smith Bathymetry,二是TerrainBase 5-minute global bathymetry/top.
2021-04-20 15:55:17
2364
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅