请问这个3维图是怎么画出来的啊
请问这个3维图是怎么画出来的啊,我输入几个语句后,得到的图不对啊 doc surfdoc mesh 把出错代码和出错提示贴出来!
我写的代码,可绘不出上面的图形啊
r=10:0.5:40; D=10:1:100; =meshgrid(r);E1=D*(1.73*r*r+580)/10000*r;
E2=D*(1.6*r*r+650)/10000*r;
mesh(E1); hold on;
mesh(E2); hold off;
[ 本帖最后由 ChaChing 于 2009-3-20 14:28 编辑 ] 我怎看不清LZ要什麽! 该不会LZ没曲面的方程?
你看不清楚什么啊,我的 代码你看不懂吗
你看不清楚什么啊,我的 代码你看不懂吗 我即使看不懂你的代码, 也可一行一行试并help!:@)我的意思是由LZ的代码, 看出LZ知道如何画3维图, 不懂"绘不出上面的图形" & "得到的图不对"的意思? 最近有好几个帖子都是根据图片来寻找数据,再画图。楼主好像没有自己的数据源或相应的公式,总感觉怪怪的。一般根据自己问题需要,有相应的数据或公式绘再图,呵呵。
对于这个图片,二维矩阵以对角线为分界,一半为常数,一半应该为非线性曲面数据,不知理解的对不对,由此给出一个小程序。
clear; clc
z=zeros(256); x=linspace(0,2,256); y=x.^2;
for i=1:256
z=z+diag(ones(1,256-i+1)*y(i),i-1);
end
mesh(z)
[ 本帖最后由 ChaChing 于 2009-3-19 23:24 编辑 ]
晕啊,我的代码中有数据公式啊
晕啊,我的代码中有数据公式啊E1=D*(1.73*r*r+580)/10000*r;
E2=D*(1.6*r*r+650)/10000*r;
这就是公式,拜托
[ 本帖最后由 ChaChing 于 2009-3-20 14:32 编辑 ]
拜托以后自己先检查代码能不能运行再放上来
1。你meshgrid应该是调用错了;2。.*和*不分
r=10:0.5:40; D=10:1:100; =meshgrid(r,D);
E1=D.*(1.73.*r.*r+580)/10000.*r; % 按你的公式检查一下
E2=D.*(1.6.*r.*r+650)/10000.*r;
mesh(E1); hold on;
mesh(E2); hold off;
[ 本帖最后由 ChaChing 于 2009-3-19 23:26 编辑 ] 原帖由 gwylei 于 2009-3-19 10:39 发表 http://www.chinavib.com/forum/images/common/back.gif
晕啊,我的代码中有数据公式啊,E1=D*(1.73*r*r+580)/10000*r;
E2=D*(1.6*r*r+650)/10000*r;
这就是公式,拜托
你在第一次发贴的时候就应该把问题尽量解释清楚,有公式和代码就应该贴出来告诉大家,而不是放个图上来坐等高手来帮你解决问题
回复 9楼 gwylei 的帖子
按照10楼的画,在转换一下视角就行了,我还以为你给的公式也是生成数据的一种方式呢,呵呵,见笑了。[ 本帖最后由 ChaChing 于 2009-3-20 14:32 编辑 ]
谁帮帮我,把这个代码调试一下啊,我调试后,总觉得出的图形不对
谁帮帮我,把这个代码调试一下啊,我调试后,总觉得出的图形不对.主要原因1,E1,E2的值的数量级不对,我假设r=10米,D=100米,套公式得出E1应该为0.81,而图形中不是0.81啊
主要原因2,我改变r的范围为10米到40米,D的范围为100米-400米.可图形变得很糟糕啊
[ 本帖最后由 ChaChing 于 2009-3-19 23:33 编辑 ] 试试:
r=10:0.5:40; D=100:1:400; =meshgrid(r,D);
E1=D.*(1.73.*r.*r+580).*r/10^7/1.5;
E2=D.*(1.6.*r.*r+650).*r/10^7/1.5;
mesh(E1); hold on;
mesh(E2); hold off; view(30,45)
[ 本帖最后由 ChaChing 于 2009-3-20 14:35 编辑 ]
回复 14楼 gwylei 的帖子
按matlab的公式算出来就是不是0.81,不知道你的所谓的公式是啥样子的,不会用matlab的形式来表示就麻烦用你会的形式。给个错误的matlab的公式只会误导别人,更解决不了你的问题。真不知道你为什么不能把的问题解释得清楚点??只会说我要什么什么。。。然后就有人帮你把问题搞定,除非是上帝现身才会有这样的奇迹发生
页:
[1]
2