MATLAB错误:“向量的长度必须相同”

时间:2019-03-01 05:50:05

标签: matlab vector

我收到一条错误消息,指出“向量的长度必须相同”,但我不确定为什么。我基本上是试图绘制关于时间的分段函数。之前,我曾遇到过“逐段”运算符的其他一些问题,所以我决定改用if语句。

figure(1);        

t = linspace(0, 30, 200); 

v_wind1 = linspace(0, 20, 100);      
v_wind2 = linspace(20, 0, 100);   

if (0 <= t < 15)                         
    v_wind = v_wind1;                        
elseif (15 <= t <30)                        
    v_wind = v_wind2;                     
end        

plot(t, v_wind);    

2 个答案:

答案 0 :(得分:1)

只需串联<div class="p-5 corner-radius" style="background: url('{% static 'boss/slider-2.jpg' %}') 50% fixed;">{{obj.app_name}}</div> v_wind1

v_wind2

这应该可以解决问题!?你想要那个结果,不是吗?

enter image description here

答案 1 :(得分:-2)

简单使用:索引

t = linspace(0, 30, 200); 

v_wind1 = linspace(0, 20, 200);      
v_wind2 = linspace(20, 0, 200);   

v_wind = zeros(size(t)) ;
idx = t >= 0 & t<15 ;
v_wind(idx) = v_wind1(idx) ; 

idx = t >=15 & t < 30 ;
v_wind(idx) = v_wind2(idx) ; 

plot(t,v_wind)