Matlab 2019b -错误的数据提示准确性
38次浏览(过去30天)
显示旧的注释
接受的答案
亚当Danz
2019年11月17日
编辑:亚当Danz
2021年8月19日
从png图像判断,数据提示中报告的值是准确的。问题似乎是精度,而不是准确性。注意,x轴和y轴的刻度是
x10 ^ 4
.这两个x值显示为77020的原因可能是因为数据提示没有显示更精确的值(即77020.48930)。
这里有两种方法来改变数据提示值的精度。
方法一:自定义更新功能
根据您的需要调整这个演示。自定义更新功能为
不
属性手动添加数据提示时调用
datatip ()
函数(可在Matlab r2019a及更高版本中使用)。
%创建一个图
图()
Ph = plot(magic(5).*7000+兰特(1),“o”);
为数据游标对象指定一个自定义更新函数
DCM =数据模式(gcf);
集(dcm,“UpdateFcn”@customDataCursorUpdateFcn,“启用”,“上”);
这是指定小数点后5位的函数
函数txt = customDataCursorUpdateFcn(~, event)
pos =事件。位置;
TXT = {sprintf(“X: % .5f”, pos(1)), sprintf(Y: % .5f '、pos (2))};
结束% <-可能不需要
方法二:使用DataTipTemplate
与方法1不同,这个方法
是
手动添加数据提示时支持
datatip ()
.由于对象之间的数据提示内容不同,您可能需要根据自己的需要调整这个演示。演示更改了假定位于数据提示的第一行和第二行中的x和y值。这适用于矢量中的所有线对象
ph值
.
%创建图形
图()
Ph = plot(magic(5).*7000+兰特(1),“o”);
指定dataip中X(第一行)和Y(第二行)值的精度
为I = 1:数值(ph)
ph值(i) .DataTipTemplate.DataTipRows(1)。格式=“% .5f”;% X
ph值(我).DataTipTemplate.DataTipRows(2)。格式=“% .5f”;Y %
结束
显示示例数据提示
datatip(ph(1), ph(1).XData(4), ph(1).YData(4)));