我有一组数据或光谱,用于各种x-y坐标。
看起来像这样:
x y spectrum x spectrum y
-14 -18 35.0286000000000 330.643000000000
-14 -18 33.6069000000000 311.247000000000
-14 -18 32.1849000000000 251.419000000000
-14 -18 30.7628000000000 205.673000000000
-14 -18 29.3404000000000 152.912000000000
-14 -18 27.9178000000000 144.101000000000
-14 -18 26.4949000000000 135.292000000000
-14 -18 25.0719000000000 133.514000000000
-14 -16 35.0286000000000 353.507000000000
-14 -16 33.6069000000000 320.039000000000
-14 -16 32.1849000000000 272.517000000000
-14 -16 30.7628000000000 198.642000000000
-14 -16 29.3404000000000 163.458000000000
-14 -16 27.9178000000000 135.314000000000
-14 -16 26.4949000000000 147.592000000000
-14 -16 25.0719000000000 114.190000000000
等等。
我编写了一个程序,从每个光谱的一个段中取一个斜率,然后制作一个如下所示的新矩阵:
x y slope
-14 -18 0.650084924302224
-14 -16 0.751250946346182
-14 -14 0.0666371921219543
-14 -12 0.703160656652351
-14 -10 1.04017251503861
等等。
然后我从该矩阵制作x,y和z矩阵并使用[C,h] = contourfm(x,y,z)
进行绘图。
我感兴趣的是一个程序,我可以点击等高线图并在最靠近我点击的点的位置绘制单个光谱的图。这对我的数据分析非常好。这远程可能吗?在此先感谢您的帮助!
答案 0 :(得分:0)
是的,有可能,您可能需要构建一个GUI,但以下内容也可能令您满意。从ginput
之类的函数开始。例如,[x,y] = ginput(n)
使您能够从当前轴识别n个点并在x和y列向量中返回它们的x和y坐标。按回车键将在输入n点之前终止输入。然后从这些x,y坐标,使用find
绘制您拥有的数据的相关部分。