请教一个向量数据画等值线的问题
各位,我现在计算出一系列坐标点上的数据,也就是有三个向量,x,y,z,怎样画出z的等值线图,是否要把向量转化为矩阵,而且contour(x,y,z)要求x,y还是递增的,我的数据都很乱,难道还要再排序?有没有什么简便的方法?C:\Documents and Settings\Administrator\桌面\离散点.jpgC:\Documents and Settings\Administrator\桌面\等值线.jpg这是我理想中的效果图,请大家给个意见 论坛里有 Chaching的回答
http://forum.vibunion.com/forum-viewthread-tid-79812-highlight-%B5%C8%D6%B5%CF%DF.html 感谢楼上的朋友,但我的数据可能很多很乱,现在还没弄出来,等弄出来试试,不行的话还得传上来请你帮我看看 回复 3 # nuaaking 的帖子
2F连接的数据是比较有规律, 所以使用reshape转成矩阵型式即可
但若没规律, 看看griddata函数的使用 我现在把数据弄出来了,是一些点的x,y坐标,每个点代表一个固定的能量数值,各点相同,现在我想看看整个平面上能量的分布,我本来是是把X-Y平面划分网格,统计每个网格有多少点,然后得到一个矩阵,每个矩阵代表网格内点的数量,无奈数据量太大,这样就算时间太长,请问大家有什么好方法吗?x,y坐标数据见附件 此数据中数据量较少,处理尚需十几秒,实际数据要打3个数量级 回复 6 # nuaaking 的帖子
听起来, LZ要画的好像不是标準的contour方式!
好像LZ要看舒密度, 那楼上第一张图不也可看出!? 实际数据要比这个大的多,肉眼是分辨不出来的,所以必须要转化成云图,这个问题已经解决了大部分,现在的问题是我的每个点带的能量不同,即每个点要乘一个不同的系数,而那个朋友的算法不好加进去,现在正想怎样解决。 load x.dat
load y.dat
= hist3(,);
= meshgrid(C{1},C{2});
contourf(X,Y,Z');
colorbar('location','southoutside');
页:
[1]