nuaaking 发表于 2010-12-21 16:53

请教一个向量数据画等值线的问题

各位,我现在计算出一系列坐标点上的数据,也就是有三个向量,x,y,z,怎样画出z的等值线图,是否要把向量转化为矩阵,而且contour(x,y,z)要求x,y还是递增的,我的数据都很乱,难道还要再排序?有没有什么简便的方法?C:\Documents and Settings\Administrator\桌面\离散点.jpgC:\Documents and Settings\Administrator\桌面\等值线.jpg
这是我理想中的效果图,请大家给个意见

tenglang 发表于 2010-12-21 21:17

论坛里有 Chaching的回答

http://forum.vibunion.com/forum-viewthread-tid-79812-highlight-%B5%C8%D6%B5%CF%DF.html

nuaaking 发表于 2010-12-29 16:16

感谢楼上的朋友,但我的数据可能很多很乱,现在还没弄出来,等弄出来试试,不行的话还得传上来请你帮我看看

ChaChing 发表于 2010-12-29 20:19

回复 3 # nuaaking 的帖子

2F连接的数据是比较有规律, 所以使用reshape转成矩阵型式即可
但若没规律, 看看griddata函数的使用

nuaaking 发表于 2011-3-25 10:07

我现在把数据弄出来了,是一些点的x,y坐标,每个点代表一个固定的能量数值,各点相同,现在我想看看整个平面上能量的分布,我本来是是把X-Y平面划分网格,统计每个网格有多少点,然后得到一个矩阵,每个矩阵代表网格内点的数量,无奈数据量太大,这样就算时间太长,请问大家有什么好方法吗?x,y坐标数据见附件

nuaaking 发表于 2011-3-25 10:14

此数据中数据量较少,处理尚需十几秒,实际数据要打3个数量级

ChaChing 发表于 2011-3-27 00:23

回复 6 # nuaaking 的帖子

听起来, LZ要画的好像不是标準的contour方式!
好像LZ要看舒密度, 那楼上第一张图不也可看出!?

nuaaking 发表于 2011-3-28 13:59

实际数据要比这个大的多,肉眼是分辨不出来的,所以必须要转化成云图,这个问题已经解决了大部分,现在的问题是我的每个点带的能量不同,即每个点要乘一个不同的系数,而那个朋友的算法不好加进去,现在正想怎样解决。

nuaaking 发表于 2011-3-28 14:05

load x.dat
load y.dat
= hist3(,);
= meshgrid(C{1},C{2});
contourf(X,Y,Z');
colorbar('location','southoutside');
页: [1]
查看完整版本: 请教一个向量数据画等值线的问题