找回密码
 注册
Simdroid-非首页
查看: 282|回复: 20

求三列数据画曲面的方法!

[复制链接]
发表于 2011-11-16 21:53:39 | 显示全部楼层 |阅读模式 来自 湖南长沙
X=
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
0.07
0.075
0.08
0.085
0.09
0.095
0.1
0.105
0.11
0.115
0.12
0.125
0.13
Y=
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.049
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.054
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.059
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.064
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.069
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.074
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.079
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.084
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.089
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.094
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.099
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.104
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
0.109
f=
161.0248
162.2718
163.321
164.156
164.7631
165.1317
165.2553
165.1317
164.7631
164.156
163.321
162.2718
161.0248
162.2718
163.5578
164.6409
165.5036
166.1312
166.5124
166.6403
166.5124
166.1312
165.5036
164.6409
163.5578
162.2718
163.321
164.6409
165.7535
166.6403
167.2858
167.678
167.8096
167.678
167.2858
166.6403
165.7535
164.6409
163.321
164.156
165.5036
166.6403
167.5468
168.2069
168.6082
168.7429
168.6082
168.2069
167.5468
166.6403
165.5036
164.156
164.7631
166.1312
167.2858
168.2069
168.878
169.286
169.4229
169.286
168.878
168.2069
167.2858
166.1312
164.7631
165.1317
166.5124
167.678
168.6082
169.286
169.6981
169.8364
169.6981
169.286
168.6082
167.678
166.5124
165.1317
165.2553
166.6403
167.8096
168.7429
169.4229
169.8364
169.9752
169.8364
169.4229
168.7429
167.8096
166.6403
165.2553
165.1317
166.5124
167.678
168.6082
169.286
169.6981
169.8364
169.6981
169.286
168.6082
167.678
166.5124
165.1317
164.7631
166.1312
167.2858
168.2069
168.878
169.286
169.4229
169.286
168.878
168.2069
167.2858
166.1312
164.7631
164.156
165.5036
166.6403
167.5468
168.2069
168.6082
168.7429
168.6082
168.2069
167.5468
166.6403
165.5036
164.156
163.321
164.6409
165.7535
166.6403
167.2858
167.678
167.8096
167.678
167.2858
166.6403
165.7535
164.6409
163.321
162.2718
163.5578
164.6409
165.5036
166.1312
166.5124
166.6403
166.5124
166.1312
165.5036
164.6409
163.5578
162.2718
161.0248
162.2718
163.321
164.156
164.7631
165.1317
165.2553
165.1317
164.7631
164.156
163.321
162.2718
161.0248
数据已经列出,我在网上找了好多方法,只画出了三角形的网格方法,想画出平滑曲面,谢谢!
 楼主| 发表于 2011-11-16 21:58:04 | 显示全部楼层 来自 湖南长沙
Simdroid开发平台
图形如:
三角形的网格,怎么做成曲面的呢?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-16 21:58:39 | 显示全部楼层 来自 湖南长沙
急求,谢谢先!
回复 不支持

使用道具 举报

发表于 2011-11-17 00:57:51 | 显示全部楼层 来自 江苏扬州
本帖最后由 stats01 于 2011-11-17 00:58 编辑

clear,clc
x=[...];y=[...];z=[...];z=z-min(z);
b=[-72.8789307972411,1006.01113795262,794.748796191598,-5030.05569361460,-5030.05567734056];
fx=@(b,x,y)b(1)+b(2)*x+b(3)*y+b(4)*x.^2+b(5)*y.^2;
figure(1),clf
scatter3(x,y,z,'o','markerfacecolor','k')
stem3(x,y,z,'filled')
[x1,y1]=meshgrid(min(x):range(x)/50:max(x),min(y):range(y)/50:max(y));
z1=fx(b,x1,y1);
pause(1)
hold on
surf(x1,y1,z1);
pause(1)
shading interp
pause(1)
alpha(.8)
axis tight
xlabel('X'),ylabel('Y'),zlabel('f')

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 08:42:46 | 显示全部楼层 来自 湖南长沙
看不懂,有没有简洁点的:'(
回复 不支持

使用道具 举报

发表于 2011-11-17 08:47:09 | 显示全部楼层 来自 江苏扬州
x=[...]...;输入数据后,将这些语句(最好放在编辑窗口)运行一下即可。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 09:44:47 | 显示全部楼层 来自 湖南长沙
程序中的b是用来拟合的?
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 09:53:48 | 显示全部楼层 来自 湖南长沙
谢谢,我试过了,对于这组数据做出的曲面比较符合理论的结果,可是换成下一组数据就不行了,呵呵
而且图上面有好多火柴棒,怎么去掉?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 09:57:53 | 显示全部楼层 来自 湖南长沙
我的意思是曲面上的值就是表格里面相应的值,能不能直接用一种方法把整个曲面画出来?
回复 不支持

使用道具 举报

发表于 2011-11-17 09:58:40 | 显示全部楼层 来自 江苏扬州
将stem3这一句去掉即可。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 09:59:36 | 显示全部楼层 来自 湖南长沙
这里面的是数据,压缩了一下!谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:02:32 | 显示全部楼层 来自 湖南长沙
就是在这个图形上面贴上一层颜色,把那些三角形消掉,嘿嘿!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2011-11-17 10:21:09 | 显示全部楼层 来自 江苏扬州
本帖最后由 stats01 于 2011-11-17 10:21 编辑

[xi,yi]=meshgrid(min(x):range(x)/60:max(x),min(y):range(y)/60:max(y));
zi=griddata(x,y,z,xi,yi);
surf(xi,yi,zi)
shading interp
axis tight

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:45:58 | 显示全部楼层 来自 湖南长沙
stats01 发表于 2011-11-17 10:21
[xi,yi]=meshgrid(min(x):range(x)/60:max(x),min(y):range(y)/60:max(y));
zi=griddata(x,y,z,xi,yi);
sur ...

把4楼的程序替换掉吗?谢谢!
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:50:49 | 显示全部楼层 来自 湖南长沙
非常感谢,做出来了,呵呵!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:51:14 | 显示全部楼层 来自 湖南长沙
正是我需要的图形,:victory:谢谢!
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:53:05 | 显示全部楼层 来自 湖南长沙
能解释一下程序的意义吗?谢谢!
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 10:57:24 | 显示全部楼层 来自 湖南长沙
现在有一个问题,就是这列数据做出来的结果和仿真的结果接近,换成另外一组数据时候差别就大了,问题出现在那里呢?
回复 不支持

使用道具 举报

发表于 2011-11-17 11:07:34 | 显示全部楼层 来自 江苏扬州
照例用后一种方法(griddata)的曲面与观察值完全吻合,而用第一种方法(拟合方法)则需要根据数据重新拟合,获得的参数估计(b)可能有所不同。至于说每一个命令的含义,可以查看help系统。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-11-17 11:15:47 | 显示全部楼层 来自 湖南长沙
谢谢,非常感谢!
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-6 08:43 , Processed in 0.054609 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表