Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-02-27, 17:15   #1
wq1983
初级会员
 
注册日期: 2008-01-16
年龄: 41
帖子: 11
声望力: 18
wq1983 正向着好的方向发展
默认 【求助】怎样将一个一维数组中的元素在指定行列的二维数组中找出它们的坐标?

我在将一个二维数组中的有用数据提取出来后,将他们放到一个一维数组中了,现在需要找到这些有用数据在原二维矩阵中的坐标,请知道的朋友帮我一下吧!多谢了!
wq1983 当前离线   回复时引用此帖
旧 2008-02-27, 17:20   #2
labfansyao
初级会员
 
注册日期: 2008-02-26
年龄: 34
帖子: 9
声望力: 0
labfansyao 正向着好的方向发展
默认 find

试一下 find
labfansyao 当前离线   回复时引用此帖
旧 2008-02-27, 17:32   #3
wq1983
初级会员
 
注册日期: 2008-01-16
年龄: 41
帖子: 11
声望力: 18
wq1983 正向着好的方向发展
默认

find不行,我试过了,我有一个公式,
Position(i,1) = int32(m-1-mod(U(i),240)); %找出行号
Position(i,2) = int32(floor(U(i)/240)); %找出列号
但是这个好像不准确,画出来的图合实际的图形差别很大!
请问您还有其他办法么,帮帮我吧!
wq1983 当前离线   回复时引用此帖
旧 2008-02-27, 18:03   #4
labfansyao
初级会员
 
注册日期: 2008-02-26
年龄: 34
帖子: 9
声望力: 0
labfansyao 正向着好的方向发展
默认 看一下你的原始数据

能不能把你的原始数据和对问题的完整描述都发上来,谢谢
labfansyao 当前离线   回复时引用此帖
旧 2008-03-06, 17:47   #5
chenhuips2
普通会员
 
注册日期: 2007-05-19
帖子: 51
声望力: 19
chenhuips2 正向着好的方向发展
默认

这个问题很好解决~
把你在第一步提取坐标点的时候记录数据的一维数组做成多维数组~
比如1×n变成3*n~
后面的2,3两行可以分别记录数据的x,y坐标~

如果记录的数据本身是多维的~
同样可以用这种追加维数的方法记录坐标等等与数据本身相关的信息~
当然也可以另外开一个数组或者矩阵记录~
但是无论采用哪一种方法在实际操作的时候一定要注意矩阵变量的结构~
追加维数的方法要注意调用数据的时候多维变量的引用方式~
另开记录用的矩阵变量则需要更原数据同步更新(例如原数据位置变动或者增添的时候,记录矩阵也需要做相同的处理)~
chenhuips2 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 08:36


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.