添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
matlab中画10个点,怎样在每个点上表上相应的符号?分别标注:A,A1,A2,A3,B,B1,B2,B3,C,C1不用手动标注,因为有很多点....要代码。谢谢~~... matlab中画10个点,怎样在每个点上表上相应的符号?分别标注:A,A1,A2,A3,B,B1,B2,B3,C,C1
不用手动标注,因为有很多点....要代码。谢谢~~

能够实现,不过稍微麻烦一些

这里借用一下Data cursor的功能

matlab的figure窗口本身就有个 Data cursor的功能

在窗口的工具栏里面可以找到这个功能

点上这个功能之后,鼠标会变成“十”字样式

在选中数据之后,回有一个浮动小框显示该点数据的坐标信息,如下图所示


现在我们可以利用这个Data Cursor的功能修改框中的内容以显示标注


首先,我们得现一个函数文件将其保存为dcmcallback.m 文件,内容如下:

function [ txt ] = dcmcallback(empt,event_obj,label)
dcm_obj = datacursormode(gcf);
info=getCursorInfo(dcm_obj);
ind = info.DataIndex;
txt=label{ind};
end


然后,我们运行一下的代码

x=rand(1,10)*10;
y=rand(1,10)*10;
L={'A','A1','A2','A3','B','B1','B2','B3','C','C1'};

plot(x,y,'.');figure(gcf);
dcm_obj = datacursormode(gcf);
set(dcm_obj,'DisplayStyle','datatip','SnapToDataVertex','off','Enable','on');
set(dcm_obj,'UpdateFcn',{@dcmcallback,L});


依旧是画10个散点的图,这个时候Data  Cursor模式自动打开

鼠标会变成“十”字样式

在选中数据点的时候,浮动框就会显示对应的标注,如下图所示

选择别的点的时候,浮动框会自动根据数据改变显示的标注文字