【matlab小笔记】

matlab设计app

命令行输入:appdesigner

【length、size、numel之间的区别】

a=[1 2 3;4 5 6];
[2 3]=size(a)
3=lenth(a)
6=numel(a)

【matlab续行符】…

【一行数据转变成一个矩阵,用reshape()】

【文件、文件夹、路径操作】

oldname=‘folder1’;
newname=‘folder2’;
command = [‘rename’,32,oldname,32,newname]; %启用dos命令修改,这里的32是asc表里的空格
status = dos(command)数组%注意这里是dos而不是doc

好好研究一下dos是个啥

【文件夹操作】

【文件夹】

判断文件夹是否存在 if ~exist()

创建文件夹 makdir

重命名文件夹 dos(‘rename oldname newname’)

复制文件夹 copyfile(‘oldfile newfile’)

删除文件夹 rmdir

创建文件夹makdir
删除文件夹delete rmdir
读取文件夹下列dir
读取文件夹和子文件夹下所有文件(递归函数)

重命名文件夹
result=dos(‘rename,oldname,newname’);%0代表没有问题,顺利执行,1表示执行失败

重命名文件,需要加后缀哦,千万不要忘了后缀
result=dos(‘rename,oldname.txt,newname.txt’);

【创建】

【创建】

【创建数组】
x = a:step:b;
x = linspace(a,b,n);  %起始为a,终点为b,个数为n

【创建】矩阵

【创建矩阵】
mat = zeros(n);  %创建n*n的0矩阵
mat = zeros(m,n);  %创建m*n的0矩阵
mat = zeros(size(A))  %创建一个与A矩阵行列数相同的0矩阵
mat = ones(n);   %创建n*n的1矩阵
mat = ones(m,n)   %创建m*n的1矩阵
mat = ones(size(A))  %创建一个与A矩阵行列数相同的1矩阵

【dir】

dir出来的文件夹列表如下:
-3文件夹
-2文件
-1文件夹
.

0文件
1文件夹
2文件

【递归遍历】递归遍历此文件夹里的所有文件自定义subdir()函数

function[list]=subdir(path,keyword,count)
list=dir([path,'\',keyword]);%先把符合条件的文件放进列表
count=count+length(list);
floderlist=dir(path);

【读取/写入】

【读取/写入】 csv文件

【读取/写入 csv文件】
mat1=load([pwd,'\rawdata.csv']);//pwd命令会输出当前路径
mat2=csvread([pwd,'\rawdata.csv']);//注意用的是单引号,而不是双引号
mat3=dlmread([pwd,'\rawdata.csv']);
csvwrite([pwd,'\result.csv'],mat1);

help csvread %查看如何读取指定行列的数据

【读取/写入】 xlsx文件指定范围的数据

mat=xlsread('rawdata.xlsx','Sheet1','E4:T36');

help xlsread %查看如何读取指定行列的数据

【读取/写入】 图片.bmp、.jpg、.png

【读取/写入 图片.bmp、.jpg、.png】
mat=imread([pwd,'\test.bmp']);%读取bmp
mat=mat2gray(mat);//归一化为0-1的数
imshow(mat);%显示bmp
imwrite([pwd,'result.bmp'],mat);

【矩阵】

【矩阵最值】求矩阵中最大值和最小值

给整个矩阵赋同一个值:mat(:)=num;%(:)中的引号是指所有元素

求矩阵中所有数据均值:avg=mean(mat(😃);

【矩阵最值】求矩阵中最大值和最小值

【求矩阵中最大值和最小值】
一维数组A
Max=max(A);
Min=min(A);

二维矩阵mat2D
Max=max(mat2D(:));
Min=min(mat2D(:));

三维矩阵mat3D
Max=max(mat3D(:));
Min=min(mat3D(:));

【限大小】限定矩阵中每个数据的大小范围

【指定数据大小范围】
mat(mat<0) = 0;  % 将矩阵A中小于0的元素设置为0
mat(mat>100) = 100;  % 将矩阵A中大于100的元素设置为100

【矩阵转数组】将矩阵转成数组,一列

【将矩阵转成数组,一列】
mat=mat(:);%不用怀疑,就是这么简单

【矩阵的合并】

【矩阵的合并】
mat3=[mat1,mat2];%行合并 %注意:用中括号合并,而不是半圆括号!
mat3=[mat1;mat2];%列合并

【4张图合成一张大图】—非RGB彩图且同尺寸

4张图合成一张大图】---非RGB彩图且同尺寸
bigImage = cell(2);  %申请了2*2的cell空间
bigImage(1) = {imageMat1};
bigImage(2) = {imageMat2};
bigImage(3) = {imageMat3};
bigImage(4) = {imageMat4};
bigMat = cell2mat(bigImage); %将cell转成大矩阵
figure
bigMat=mat2gray(bigMat);
imshow(bigMat);
//或者使用下面方式呈现图片
imshow(bigMat,[min(min(bigMat)) max(max(bigMat))]);

【画图】

【画二维图】

subplot(2,2,1);
plot();
set(gca,'XLim',[0 100],'YLim',[0 100]);%设置x轴和y轴显示范围

【画三维图】将矩阵通过三维图展示出来

【将矩阵通过三维图展示出来】
surf(mat);  %平滑着色的三维曲面图
mesh(mat);  %网格划分的曲面图
scatter3(X,Y,Z,color);%画三维散点图

【画数据分布图】查看数组中的数据分布hist()

【查看数组中的数据分布】hist()
array=mat(:);%如果是想看矩阵中的数据频率分布,需要先转成数组
dataFeature=tabulate(array);%得到的dataFeature:第一列为value数值,第二列为count数量,第三列为percent占比
value=dataFeature(:,1);
count=dataFeature(:,2);
plot(value,count);grid on;%画图

【导出】怎样从fig导出高清图

【导出】怎样从fig导出高清图:
点击fig图窗左上角 ‘**文件**--**导出设置**--**渲染**--**分辨率**--**600**--**导出**...

【常用demo】

【导入excel并画图】

【导入excel并画图】
path = ‘C:\Desktop’;
excelList = dir([path,'\*.csv']);
mat = load([path,'\',excelList(1).name]);
plot(mat(:,1),mat(:,2),'rv-','linewidth',2);
set(gca,'fontsize',18);%设置坐标轴数字大小
xlabel('x轴','fontsize',20);%字体大小 可标 可不标
ylabel('y轴');
title('标题');
legend('标注');

【移动文件】移动指定文件到指定文件夹中

【移动指定文件到指定文件夹中】
%路径
path = 'D:\文件夹1';
%创建子文件夹
%列出所有待转移的文件名
excelList = dir([path,'\*.csv']);
%列出所有终点文件夹
files = dir(fullfile(path));files = fiels(3:102);
%转移文件,至文件夹中
for num = 1:100
    num %用于显示进度
    for i = 1:43
    copyfile(excelList((num-1)*43+i).name,files(num).name);
    end
end
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值