matlab中plot同时绘制两个函数时向量长度不一致的解决办法
生活随笔
收集整理的這篇文章主要介紹了
matlab中plot同时绘制两个函数时向量长度不一致的解决办法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在同一張圖上繪制函數及其導數的圖形的時候遇到的問題:求導數需要diff函數,眾所周知,diff函數計算的是差值,出來的向量比原向量維數少1,導致用一個plot繪制的時候會報錯
matlab中繪圖時遇到向量長度不一致的解決辦法
下面是錯誤使用的用法和結果
那我是怎么解決的呢?
使用兩個plot函數,然后對自變量x做相應的修改。因為diff之后維度少1,則x也應該少1,于是繪圖時x變成x(1:end-1),其中end表示這個x向量的維數
整體可以運行的源程序:
h=0.5;x=0:h:2*pi; y=sin(x);%y值相鄰的差值組成的向量 m=diff(y)./diff(x);%計算出來各點導數向量hold on; plot(x,y,'b-');%繪制圖形 plot(x(1:end-1),m,'or-');%自變量x減1和后面m維度匹配 hold off; legend('sin(x)','sin''(x)');運行結果:
總結
以上是生活随笔為你收集整理的matlab中plot同时绘制两个函数时向量长度不一致的解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab中怎么使用disp函数显示一
- 下一篇: github入门必备概念