繁体   English   中英

插入图像并将其绘制出来MATLAB

[英]inserting an image and plotting it MATLAB

我正在尝试插入一个方程式并将其绘制出来,但是我无法这样做,因为我不断遇到类似错误:矩阵尺寸必须一致,或者内部矩阵尺寸必须一致。

http://www4.0zz0.com/2012/11/25/10/272913238.png这是等式。 M的值为1至6,增量为0.5。 Q的值为0到1,增量为0.1。

http://www4.0zz0.com/2012/11/25/10/700692428.png情节是这样的

 m=1:0.5:6;
 q=0:0.1:1;

我试图将方程式拆分为多个部分,所以对我来说插入起来会更容易,但是最后一部分却出现了错误

e=q./m(1-sqrt(1-(q./m).^2));

下标索引必须是实数正整数或逻辑值。

  1. 要遍历mq每个组合:您想使用ndgrid 现在, mq都是行向量,因此按数组的运算将仅将m的第一个元素与q的第一个元素一起使用,将第二个元素与第二个元素一起使用,依此类推。 您想要的是2D矩阵,其中m沿一维变化, q沿另一维变化。 这就是ndgrid所做的。 尝试这个:

     [q, m] = ndgrid(0:0.1:1, 1:0.5:6); 
  2. 对于下标索引错误消息:问题是乘法与数组访问。 在公式PNG中,分母的形式为M{…} ,这意味着M乘以括号中的值。 在您的代码中,您编写了m(…) ,实际上是一个数组访问,而不是乘法。 将其更改为m .* (…)可使代码正常工作。 工作版本为:

     e=q./(m.*(1-sqrt(1-(q./m).^2))); 

    现在,您可以执行以下操作:

     figure; plot(e); 

    …并且您应该得到与您想要的输出相似的输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM