MATLAB中的转置操作及其必要性

MATLAB中的转置操作及其必要性

原始数据

matlab 复制代码
x_data = [0, 50, 100, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000]; 
y_data = [0, 0.25, 0.5, 0.85, 1.2, 1.35, 1.45, 1.52, 1.62, 1.68, 1.75, 1.85];

原始数据是行向量.

当调用plot命令时, 且x_datay_data是一维向量, 即是一个 1×n1 \times n1×n(行)或 n×1n \times 1n×1(列)的向量,MATLAB将会正确绘制图像.

matlab 复制代码
%% 原始数据
x_data = [0, 50, 100, 200, 400, 600, 800, 1000, 1500, 2000, 3000, 5000]; 
y_data = [0, 0.25, 0.5, 0.85, 1.2, 1.35, 1.45, 1.52, 1.62, 1.68, 1.75, 1.85];




%% 查看维度
disp('x_data 维度:'); disp(size(x_data)); % 输出 [1, 12](1行12列)
disp('y_data 维度:'); disp(size(y_data)); % 输出 [1, 12](1行12列)

plot(x_data, y_data);

%% 转置

x_data = x_data';
y_data = y_data';

figure;

% 两者绘制的图像一样
plot(x_data, y_data);

转置

MATLAB 中,单引号 ' 表示复共轭转置(也叫 Hermitian 转置), 对于实数数组, 它的作用就是普通的行列转置(将行向量转为列向量, 或列向量转为行向量); 若为复数数组, 它会先对元素取共轭, 再进行转置.

如果需要严格的普通转置(不进行共轭操作), 可使用点单引号 .', 对于实数数组而言, '.' 效果完全一致.

相关推荐
维吉斯蔡4 小时前
【VS Code / Cursor】文件夹右键快捷打开与文件类型自动关联
开发语言·程序人生·学习方法
luj_17686 小时前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
always_TT6 小时前
【Python 日志记录:logging 模块入门】
开发语言·python·php
xcLeigh7 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
zmzb01037 小时前
C++课后习题训练记录Day175
开发语言·c++
脱胎换骨-军哥8 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
枕星而眠8 小时前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表
java·开发语言
geats人山人海9 小时前
数据结构第六章c语言 树的存储下二叉树的概念和存储
c语言·数据结构·算法
爱吃牛肉的大老虎9 小时前
Rust对象之结构体,枚举,特性
开发语言·后端·rust
bbq粉刷匠10 小时前
HashMap 底层原理深度拆解(二):putVal 完整链路解析(懒加载 · 链表遍历 · 尾插法)
java·开发语言·哈希算法