MATLAB contour中矩阵Z的意义

contour(Z)根据矩阵Z画出等高线,Z是以x,y为平面的高度。矩阵Z中点具体如何对应?高度如何与xy对应?比如,这个矩阵如何出这个图谢谢... contour(Z)根据矩阵Z画出等高线,Z是以x,y为平面的高度。
矩阵Z中点具体如何对应? 高度如何与xy对应?

比如,这个矩阵如何出这个图
谢谢
展开
dukinkin
推荐于2016-01-17 · TA获得超过1.3万个赞
知道大有可为答主
回答量:2444
采纳率:90%
帮助的人:889万
展开全部
z矩阵就是二维网格的数据
等高线就是从这个二维网格矩阵中计算得出

contour(z,1,'r')
是从矩阵z,中画1个值的等值线,用红色线条画出

因为缺省了x,y,x和y的数据就用z的数据数量代替
x=1:2 y=1:2
也就是z对应的xy坐标就是数据的下标

你的数据是2 1 1 1 中间值是1.5
画一个值的等值线就是1.5这个值

具体画等值线的算法比较复杂
大概就是检查网格点和要求等值的关系
一个网格四条边,每条边上两个端点
如果端点两端的值一个比等值大,一个比等值小
那么等值线肯定经过这条边
再根据等值离两边值的距离,确定交点离等值的距离

最后将得到的这些点连起来就是等值线 (x,y)z
(1,1)2 (2,1)1
(1,2)1 (2,2)1
等值是1.5所以等值线和
(1,1)2-(1,2)1
(1,1)2-(2,1)1
这两条变相交,1.5距离1和2都是0.5,所以交点在两边中间
也就是(1,1.5) 和(1.5,1)
追问

不好意思,忘记给悬赏了,没有多少不要介意


我似乎搞明白了一点。不过这个矩阵有点特殊,我换了个。

麻烦解释下为什么要取 3.5的等高

3   4

5   2

追答
contour(z,n)
其中的n如果是个标量,那么n表示要画等值线取等值的数量

函数会根据数据的范围决定取哪些等值
在你这里n等于1,那么肯定就是取范围的中间值
你这数据最小是2,最大是5,中间值就是3.5
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式