Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2009-02-27, 10:44   #1
hejiefabio
初级会员
 
注册日期: 2009-02-24
年龄: 41
帖子: 3
声望力: 0
hejiefabio 正向着好的方向发展
默认 回复: [求助]画函数图像

我也是新手,我给你写了下。但是显示矩阵维数不一致。
x=0:100;
y=2*tanh(3/x)/(3-4*tanh(3/x));
plot(x,y)
??? Error using ==> mrdivide
Matrix dimensions must agree.
你检查下你的函数看看。
hejiefabio 当前离线   回复时引用此帖
旧 2009-02-27, 23:54   #2
wuchong
初级会员
 
注册日期: 2008-04-14
年龄: 38
帖子: 2
声望力: 0
wuchong 正向着好的方向发展
默认 回复: [求助]画函数图像

你这里y是一个单变量,而x是一个1*100维矩阵,当然矩阵不匹配了。。。

作如下改写:
for i=1:100,
y(i) = 2*tanh(3/i)/(3-4*tanh(3/i));
end
plot(y);
wuchong 当前离线   回复时引用此帖
旧 2009-02-28, 11:52   #3
chengj1118
游客
 
帖子: n/a
默认 回复: [求助]画函数图像

对于这个函数,y=c*tanh(t1/x)/(t1-tc*tanh(t1/x)),
你首先需要赋值,也就是x的范围,比如你希望x从0,200,共分100个点,可以写成:
x=linspace(0,200,100);
再带入计算。
如果是二维图象,也可以避免用for进行循环;例如,我们画正态分布曲线,f(x,y)=exp(-x^2-y^2);
如果你需要把x的范围设置在[-10,10],网格分100个点;y的范围设置在[-5,5],共50个点,你可以这样写:
x=linspace(-10,10,100);
y=linspace(-5,5,50);
[X Y]=meshgrid(x,y);%建立二维网格
P=exp(-X.^2-Y.^2);
contour(X,Y,P)
  回复时引用此帖
旧 2009-03-02, 14:49   #4
puramo
初级会员
 
注册日期: 2008-08-08
年龄: 38
帖子: 1
声望力: 0
puramo 正向着好的方向发展
默认 回复: [求助]画函数图像

俺也在学,交流一下。刚才试验过了,小改一下你的写法可以用。
应为x=0:100是一位向量了,所以y中与x有关的运算符要改成.(算符),让向量元素单个进行运算,而不是整个向量一起做运算。
puramo 当前离线   回复时引用此帖
旧 2009-03-03, 09:05   #5
heping96115
初级会员
 
注册日期: 2008-11-30
年龄: 48
帖子: 5
声望力: 0
heping96115 正向着好的方向发展
不错 回复: [求助]画函数图像

多谢各位的大力相助,我有空的时侯再试试。这真是个好论坛,互帮互助,共同进步。
heping96115 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
matlab可以建气溶胶荧光光谱数据库吗 rongerlovesj MATLAB论坛 0 2009-02-06 15:20
[分享]matlab/simulink超级好网站推荐 rstsing MATLAB论坛 1 2009-01-30 13:10
[求助].m文件,运行错误提示 Leo_fish MATLAB论坛 1 2008-12-24 09:42
[求助]图形分块涂色的问题 olypic MATLAB论坛 0 2008-12-14 21:49


所有时间均为北京时间。现在的时间是 23:19


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.