default_getDatatipText.m MATLAB R2014+
조회 수: 1 (최근 30일)
이전 댓글 표시
I'd like to change the default data tip that's displayed on plots in MATLAB R2014+ versions. Before, one could edit the file default_getDatatipText.m and change the number of digits. Now that file no longer exists.
I'd like to change the default behavior instead of changing the datacursor mode to a custom update function.
e.g. I could do something like this: dcm = datacursormode; set(dcm, 'UpdateFcn', @tenDigitTextUpdate)
But I'd rather change the default instead.
댓글 수: 0
답변 (1개)
Joe Vinciguerra
2019년 11월 11일
add the following to your startup.m file:
set(0,'defaultFigureCreateFcn',@(s,e)datacursorextra(s))
Create a new M-file in your matlab path called "datacursorextra.m" and insert the following into that file:
function datacursorextra(fig)
% Use current figure as default
if nargin<1
fig = gcf;
end
% Get the figure's datacursormode, and set the update function
h = datacursormode(fig);
set(h,'UpdateFcn',@myupdatefcn)
% The actual update function
function txt = myupdatefcn(~,event)
% Short-hand to write X, Y and if available Z, with 10 digit precision:
lbl = 'XYZ';
txt = arrayfun(@(s,g)sprintf('%s: %.10g',s,g), lbl(1:length(event.Position)), event.Position,'uniformoutput',false);
% If a DataIndex is available, show that also:
info = getCursorInfo(h);
if isfield(info,'DataIndex')
DataIndex = [info.DataIndex];
txt{end+1} = sprintf('Index: %d\n', DataIndex(1));
end
end
end
Change the formatting in line 15 to your liking.
댓글 수: 1
Hannes
2020년 5월 13일
This works well and I have been using the startup.m file to customize default settings.
However, this seems to crash the App Designer! (2019b and 2020a)
참고 항목
카테고리
Help Center 및 File Exchange에서 Annotations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!