matlab里如何画等高线图形
现在想编个程序,给定了x值、y值以及z值,现在现在想以x,y为坐标,得到一个关于z值的等高曲线图,二维、三维都可以。x、y和z值之间没有函数关系。如下列数据:xyz-71...
现在想编个程序,给定了x值、y值以及z值,现在现在想以x,y为坐标,得到一个关于z值的等高曲线图,二维、三维都可以。
x、y和z值之间没有函数关系。
如下列数据:
x y z
-71 56 0
-70 5 1
74 5 1
75 57 9
0.5 18 15
0.5 53 9
-40 11 -16
-40 45 -9
-70 32 -4
35 11 10
39 45 5
-29 18 -5
-52 37 -3
52 25 6
-18 53 -5
15 15 10
-57 9 3
65 41 2
-56 52 3
15 5 9
19 33 10
-19 6 -6
-45 23 -12
-63 17 -2
57 17 12 展开
x、y和z值之间没有函数关系。
如下列数据:
x y z
-71 56 0
-70 5 1
74 5 1
75 57 9
0.5 18 15
0.5 53 9
-40 11 -16
-40 45 -9
-70 32 -4
35 11 10
39 45 5
-29 18 -5
-52 37 -3
52 25 6
-18 53 -5
15 15 10
-57 9 3
65 41 2
-56 52 3
15 5 9
19 33 10
-19 6 -6
-45 23 -12
-63 17 -2
57 17 12 展开
2个回答
展开全部
举个例子,画z=sin(x)+exp(y)的等高线
%生成数据,如果你已经有数据的话就不用生成了
[x,y]=meshgrid(linspace(-2,2));
z=sin(x)+exp(y);
%最简单的等高线
contour(x,y,z)
%如果要指定等高线条数
contour(x,y,z,10)%画10条等高线
%如果要显示等高线的值
[c,h]=contour(x,y,z);
set(h,'showtext','on')%显示等高线的值
%如果要指定等高线的值
[c,h]=contour(x,y,z);
set(h,'showtext','on','levellist',[-.7
-.5
-.3
0
.5
1
2
4
7])%设定等高线的值
%生成数据,如果你已经有数据的话就不用生成了
[x,y]=meshgrid(linspace(-2,2));
z=sin(x)+exp(y);
%最简单的等高线
contour(x,y,z)
%如果要指定等高线条数
contour(x,y,z,10)%画10条等高线
%如果要显示等高线的值
[c,h]=contour(x,y,z);
set(h,'showtext','on')%显示等高线的值
%如果要指定等高线的值
[c,h]=contour(x,y,z);
set(h,'showtext','on','levellist',[-.7
-.5
-.3
0
.5
1
2
4
7])%设定等高线的值
展开全部
d = [-71 56 0
-70 5 1
74 5 1
75 57 9
0.5 18 15
0.5 53 9
-40 11 -16
-40 45 -9
-70 32 -4
35 11 10
39 45 5
-29 18 -5
-52 37 -3
52 25 6
-18 53 -5
15 15 10
-57 9 3
65 41 2
-56 52 3
15 5 9
19 33 10
-19 6 -6
-45 23 -12
-63 17 -2
57 17 12];
[X Y] = meshgrid(-80:80, -80:80);
Z = griddata(d(:,1), d(:,2), d(:,3), X, Y);
contour(X, Y, Z)
-70 5 1
74 5 1
75 57 9
0.5 18 15
0.5 53 9
-40 11 -16
-40 45 -9
-70 32 -4
35 11 10
39 45 5
-29 18 -5
-52 37 -3
52 25 6
-18 53 -5
15 15 10
-57 9 3
65 41 2
-56 52 3
15 5 9
19 33 10
-19 6 -6
-45 23 -12
-63 17 -2
57 17 12];
[X Y] = meshgrid(-80:80, -80:80);
Z = griddata(d(:,1), d(:,2), d(:,3), X, Y);
contour(X, Y, Z)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询