Matlab中datacursormode实时显示axes中的标签(tip)内容

假设GUI中有两个axes,并设置全局变量:P11,P12,P2
axes1的曲线为P11(X11,Y11) P12(X12,Y12)
axes2的曲线为P2(X2,Y2)

1.实时获取游标位置事件的全局变量

function figure1_WindowButtonMotionFcn(hObject,eventdata,handles)
global Pos;
Pos=get(gcf,'CurrentPoint');

2.通过判断位置Pos(x,y)坐标,显示axes中的内容
function txt=MyDataCursorUpdata(obj,event_obj)
pos=get(event_obj,'Position');  %%当前axes中x的坐标
global Pos;   %%全局游标位置
global  P11 P12 P2;   %%全局游标位置
%%120通过测试调整,为axes1何axes2之间x坐标某一分割值
if Pos(1)<120
    x=num2str(pos(1));
    str11=num2str(P11(pos(1)),'%0.6f%%');
    str12=num2str(P12(pos(1)),'%0.6f%%');
	txt={['pos:',x],['plot11:',str11],['plot12:',str12]};
else
	x=num2str(pos(1));
    str2=num2str(P2(pos(1)),'%0.6f%%');
	txt={['pos:',x],['plot2:',str2]};
end

3.方法绑定
dcm_obj=datacursormode(gcf);
set(dcm_obj,'DisplayStyle','datatip','Enable','on');
set(dcm_obj,'UpdateFcn',@MyDataCursorUpdata);
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_SimpleLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值