Matlab技巧

目录

一、如何连续访问或者连续命名变量

二、如何画双y轴条形图且将数据显示

三、输出时间

四、同时给多个变量赋值

五、表格处理

5.1 表格读取

5.2 表格保存

六、数据处理

6.1 数据重新排列

6.2 数据整体重复

6.3 数据单个元素重复

6.4 两组数据对应寻找

6.5 重复数据删除并保留一个

6.6 数据排序

6.7 NaN替换成0

6.8 数组限值

6.9 元胞数据处理

6.9.1 删除空白值

6.9.2 删除空白行

 6.9.3 提取元胞中的所有数据

6.10 填充空白值

6.11 删除全零行(列) 

6.12 计算一行中非零元素个数

6.13 序列生成

七、在图中添加LaTex公式

八、设置

8.1 数据显示

九、读取文件夹所有名称

十、信号处理

 10.1 求信号上下包络

十一、符号处理

11.1 符号美化


一、如何连续访问或者连续命名变量

a1=[1 2;3 4;5 6];
a2=[2 5;3 7;4 8];
a3=[9 5;8 4;7 3];
a4=[5 2;4 6;3 4];
a = cell(4,1);
for i = 1:4
       a{i}=eval(strcat('a',num2str(i)))
end

二、如何画双y轴条形图且将数据显示

x={'中国','英国'};

xx = categorical(x);    %定义分类数组
xx = reordercats(xx,x);    %调用 reordercats 函数来指定条形的顺序
y = [1015.37 352.81; 5260 6943];
oo=[0,0];   %引入的零数组

yyaxis left      %激活左侧
hold on
b1=bar(xx,[y(1,:);oo]);    %引入零数组
ax = gca;
ax.YColor='black';
set(b1(1,1),'FaceColor','b');%选择1c(这个颜色
set(b1(1,2),'FaceColor','r');%选择1c(这个颜色
text(1-0.15,y(1,1),num2str(y(1,1)),'HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',25,'FontName','Times New Roman');
text(1+0.15,y(1,2),num2str(y(1,2)),'HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',25,'FontName','Times New Roman');
yyaxis right      %激活右侧
hold on
b2=bar(xx,[oo;y(2,:)]); %引入零数组
set(b2(1,1),'FaceColor','b');%选择1c(这个颜色
set(b2(1,2),'FaceColor','r');%选择1c(这个颜色
ylim([1500 8000])
legend([b1(1,2) b2(1,1)],{'SiC相对于IGBT节省金额','HyS相对于IGBT节省金额'}) ;   %只显示原始数据的图例
box on
ax = gca;
ax.YColor='black';

text(2-0.15,y(2,1),num2str(y(2,1)),'HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',25,'FontName','Times New Roman');
text(2+0.15,y(2,2),num2str(y(2,2)),'HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',25,'FontName','Times New Roman');
set(gca,'FontSize',25)

三、输出时间

datestr(now,‘yyyy-mm-dd HH:MM:SS’ )

四、同时给多个变量赋值

[x,y,z] = deal(0);
[a,b,c] = deal(1,2,3);

五、表格处理

5.1 表格读取

        利用readtable进行表格读取,表格读取之后为table格式,将table转换成数组格式。

file.name = "result_13028.xlsx";
file.para = sheetnames(file.name);
data.raw = readtable(file.name,'Sheet',file.para(1));
data.n = table2array(data.raw(:,1));
data.n = data.n(~isnan(data.n));

5.2 表格保存

fullname = '666.xlsx';
a = table(table_500);
% 4*(i-1)+6:4*i+5-(4-length(para.rawdata500.thermal.RCth.leg(1).S(1).tr.(loss_struct{i})))

str = [ "sdfdsf"];
writematrix("str_you_type",fullname,'Sheet',"thermal",'Range',"A1");
writematrix(str,fullname,'Sheet',"thermal",'Range',"A2");
writetable(a,fullname,'Sheet',"thermal
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

The hopes of the whole village

看心情打赏咯

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值