【问题标题】:Problems with plotting in MatlabMatlab中的绘图问题
【发布时间】:2011-06-04 14:50:00
【问题描述】:

嘿,我在 Matlab 中绘制函数时遇到问题。

我首先运行这个:

格式长 f = inline('-x.^2');

对于 i = 0:10 [I(i+1) h(i+1) tid(i+1)] = trapets(f,0,1,2^i); 结束

主干 = I - log(2);

等一下 网格上

绘图(log(h),log(trunk),'r+')

t = -7:0; c = polyfit(log(h),log(trunk),1); yy = polyval(c,t); 情节(t,yy) 网格关闭 等一下

系数 = 实数(c)

然后我运行这个文件:

等一下

plot(h,trunk,'r+:','linewidth',2)

轴([0 0.6 0 0.0014])

事情是,我没有得到任何错误,并且绘图窗口会弹出轴和所有内容,但是找不到图表。它只是一个有两个轴的空窗口。

有人有什么想法吗?

编辑: 好的,所以我是这个网站的新手,找不到回复按钮,所以我在这里添加回复。

@woodchips: 我刚刚意识到我没有向您提供有关此问题的所有信息。对此感到抱歉,无论如何,如果有人有时间帮助我解决此问题,我将真的感激不尽,这将严重我的星期。

这是我不小心漏掉的部分:

函数 [ I,h,tid ] = trapets( f,a,b,n)

h=(b-a)/n;

抽动;我=(f(a)+f(b));

对于 k=2:2:n-2

I = I+2*f(a+k*h);

结束

对于 k = 1:2:n-1

I = I + 4*f(a+k*h);

结束

I = I * h/3;

tid = toc;

结束

编辑2:所以,我认为我正在寻找的图表实际上是在我编写的第一个代码中绘制的,问题是变量“我”没有改变,我希望它会这样做,虽然变量“n”和“h”确实发生了变化。如果“我”工作正常,我可能会得到正确的图表(希望如此)。任何想法,任何人?

【问题讨论】:

  • 你所做的是正确的。这个网站不像普通的论坛,所以没有“回复”按钮。如果您需要为您的问题添加更多信息,您只需对其进行编辑并添加信息。这样,它有助于将所有编辑和更新保存在一个地方,而不必搜索线程。其他 cmets/次要细节/等应严格包含在问题 cmets(如果它与问题有关)或特定答案的 cmets(如果它与该答案/回答者有关)

标签: matlab plot


【解决方案1】:

不幸的是,我安装了 Matlab 的家用电脑前几天死了,所以我无法测试任何东西。我能想到的第一件事是简单地逐步运行代码并查看数学结果是否符合您的预期。例如,如果我没记错的话,Matlab 主要是作为矩阵计算器制作和运行的。因此,大多数简单的数学运算都无法像在计算器中计算那样起作用。一个例子是 2^i 需要 2.^i 才能在某些情况下正确运行。与 .* 和 ./ 相同,以使用单数标量与矩阵数学。

找出问题所在的最佳方法是对数学进行多次迭代,以确保它按预期执行。一旦得到验证,您就可以继续查看绘图格式。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-25
  • 2016-02-20
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多