matlab中数据光标模式打开时如何获取点击点的坐标?

2023-11-29

我正在尝试在 Matlab 中设计和编程 GUI,但我对此并不熟悉。

基本上,我有两个组件,即“轴”和“列表框”。轴中有一个 RGB 图像。我计划将选定的点添加到列表框中。

下面的代码工作得很好,但我想让它在数据游标打开时工作。

当数据光标打开时如何使其工作?

% 100x100x3 RGB image
RgbImage = randi(100, 100, 100, 3);

% Draw the image
axesHandle = axes();
imageHande = imagesc(RgbImage);
axis image;

% ButtonDownFc
set(imageHandle, 'ButtonDownFcn', @imageButtonDownFcn);
function imageButtonDownFcn(hObject, eventdata)
    p = get(gca, 'CurrentPoint');
    x = floor( p(1) );
    y = floor( p(2) );

    % Some code to add the [x y] to the list box
end

编辑1: 问题是这个函数图像 ButtonDownFcn当数据游标打开时不会触发。


我首先为数据游标创建一个自己的更新函数

% in your main .m file    
hdt = datacursormode;
set(hdt,'UpdateFcn',{@labeldtips,hdt});

然后你可以像这样获取该函数中的位置:

function output_txt  = labeldtips(obj,event_obj,hdt)
% Display an observation's Y-data and label for a data tip
% obj          Currently not used (empty)
% event_obj    Handle to event object

dcs=hdt.DataCursors;
pos = get(dcs(1),'Position');   %Position of 1st cursor

output_txt{1} = ['X: ', num2str(pos(1))];
output_txt{2} = ['Y: ', num2str(pos(2))]; %this is the text next to the cursor
end

那么你的位置是pos你可以添加%Some code to add the [x y] to the list box again

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

matlab中数据光标模式打开时如何获取点击点的坐标? 的相关文章

  • 括号中的波形符字符

    在 MATLAB 中 以下代码执行什么操作 m func returning matrix 波浪号运算符 的作用是什么 在 Matlab 中 这意味着不要将函数中相应的输出参数分配到赋值的右侧 因此 如果func returning mat
  • 如何使用 MATLAB 的 substruct 函数创建表示使用“end”的引用的结构?

    我想使用substruct http www mathworks com help matlab ref substruct html函数创建一个结构体以供使用subsref 目的是使用索引字符串subsref而不是通常的 符号 因为我正在
  • 有效地绘制大时间序列(matplotlib)

    我正在尝试使用 matplotlib 在同一轴上绘制三个时间序列 每个时间序列有 10 6 个数据点 虽然生成图形没有问题 但 PDF 输出很大 在查看器中打开速度非常慢 除了以栅格化格式工作或仅绘制时间序列的子集之外 还有其他方法可以获得
  • 给定协方差矩阵,在Matlab中生成高斯随机变量

    Given a M x M期望的协方差 R 以及所需数量的样本向量 N计算一个N x M高斯随机向量 X在普通 MATLAB 中 即不能使用r mvnrnd MU SIGMA cases 不太确定如何解决这个问题 通常你需要一个协方差并且意
  • @(t)在Matlab中是什么意思? [复制]

    这个问题在这里已经有答案了 正如标题所示 考虑到下面的上下文 t 在 Matlab 中到底意味着什么 computeNumericalGradient 是一个函数 cofiCostFunc 也是一个接受一堆参数的函数 问题是 t 对 cof
  • Matlab dec2bin 给出错误的值

    我正在使用 Matlab 的 dec2bin 将十进制数转换为二进制字符串 但是 我得到了错误的结果 例如 gt gt dec2bin 13339262925365424727 ans 101110010001111010010100111
  • 正确使用 fft2 和 fftshift 进行着色形状

    我正在尝试从 Trucco Verri 文本 3d 计算机视觉入门技术 中看到的着色算法重新创建经典形状 但我很难理解 matlab 中的 fft 函数 本质上 我需要使用可积性约束来获取图像的深度 Z 我不确定在这种情况下何时使用 fft
  • Matlab Builder JA - 将 Matlab 编译成 Java jar - 免费版本?

    请记住 我对 Matlab 一无所知 Matlab Builder JA 允许开发人员构建 Matlab 应用程序并将其导出到 Java jar 中 太棒了 我只需要生成一个 jar 然后就可以从其他 java 代码中使用它 有谁知道单罐包
  • 快速有效地计算已知特征值的特征向量

    我的问题的简短版本 计算矩阵特征向量的最佳方法是什么A 如果我们已经知道属于特征向量的特征值呢 更长的解释 我有一个很大的随机矩阵A由于它是随机的 因此具有非负左特征向量x 这样A Tx x 我正在寻找快速有效的方法来数值计算这个向量 最好
  • 如何在 MATLAB 中绘制纹理映射三角形?

    我有一个三角形 u v 图像中的坐标 我想在 3D 坐标处绘制这个三角形 X Y Z 与图像中的三角形进行纹理映射 Here u v X Y Z都是具有三个元素的向量 代表三角形的三个角 我有一个非常丑陋 缓慢且令人不满意的解决方案 其中我
  • 如何知道Matlab中系统命令执行过程中经过的时间?

    我有一个运行系统脚本的 Matlab 代码 该脚本可能会因命令运行而停止 我想知道是否有一种方法可以让程序知道它是否花费了很长时间并执行其他操作 这是代码 tic status cmdout system iperfcmd The prog
  • 将 Matlab 的 datenum 格式转换为 Python

    我刚刚开始从 Matlab 迁移到 Python 2 7 在读取 mat 文件时遇到一些问题 时间信息以 Matlab 的日期数字格式存储 对于那些不熟悉它的人 日期序列号将日历日期表示为自固定基准日期以来已经过去的天数 在 MATLAB
  • 加到 100 的随机数:Matlab

    我将人口数量分成不同的矩阵 现在想使用随机数测试我的代码 快速提问 谢谢你们提前的帮助 如果我使用 100 rand 9 1 使这 9 个数字相加等于 100 的最佳方法是什么 我想要 9 个 0 到 100 之间的随机数 加起来为 100
  • 如何使用matlab创建正态分布

    供参考 我有一些关于机器维护计划 用于翻新和大修机器 从时间表中可以看到每台机器何时进行重新检查和大修的信息 每年都有机器重修或大修的实际日期和到期日期 作为例子 machine 1 实际日期 2 1 记录 截止日期 12 1 实际日期 1
  • 使用嵌套 if 子句向量化循环

    Problem 我正在尝试优化代码的运行时 并且之前曾提出过类似的问题 其中包括几个嵌套的 if 语句 向量化嵌套 if 语句 https stackoverflow com questions 38125770 vectorizing n
  • 给定三点计算仿射变换

    我有两张图像 并使用筛选找到了三个相似的二维点 我需要计算图像之间的仿射变换 不幸的是 我错过了讲座 而且那里的信息对我来说有点密集 计算这个 2x3 矩阵的一般方法是什么 我有 2x3 矩阵 x1 y1 x2 y2 x3 y3 中的点矩阵
  • 如何对函数的输出使用索引? [复制]

    这个问题在这里已经有答案了 可能的重复 如何索引函数返回的 MATLAB 数组而不先将其分配给局部变量 https stackoverflow com questions 3627107 how can i index a matlab a
  • 如何在 Matlab 中绘制连通性/邻接矩阵图?

    我想在 MATLAB 中绘制网络 电网 的结构图 我有一个包含每个分支的往返节点的列表 我没有节点的坐标 并且每次模拟的系统拓扑都会发生变化 我还需要能够为各种线路 节点分配不同的颜色 以可视化电压问题或过载等 类似于我使用传记 下面的代码
  • MATLAB 中的神经网络

    我在 MATLAB 中训练了异或神经网络并得到了这些权重 iw 2 162 2 1706 2 1565 2 1688 lw 3 9174 3 9183 b 1 2 001 2 0033 b 2 3 8093 出于好奇 我尝试编写 MATLA
  • 旋转情节?

    我已经在 Matlab 中获得了正弦曲线的 x y 图 我希望将该图逆时针旋转 90 度 我该怎么做呢 在绘制的图中 单击 视图 gt 相机工具栏 使用滚动相机图标 这应该允许您旋转绘图 编辑 您还可以使用 camroll 函数以编程方式执

随机推荐