Data space to figure units conversion

A utility function to simplify use of annotation function

https://github.com/michellehirsch/MATLAB-Dataspace-to-Figure-Units

現在この提出コンテンツをフォロー中です。

The annotation function, which allows you to programmatically add a wide range of annotations to your figure, requires coordinates to be specified in normalized figure units. I have found that I almost always want to specify my annotations in data space (i.e., based on the values of data displayed in an axes).
This utility function converts coordinates in data space into normalized figure coordinates, for input to annotation. Some annotations require you to specify (x,y) pairs, while others require a 4 element position vector. This function supports both syntaxes.

Here's a simple example:
% Create some data
t = 0:.1:4*pi;
s = sin(t);

% Add an annotation requiring (x,y) coordinate vectors
plot(t,s);ylim([-1.2 1.2])
xa = [1.6 2]*pi; % X-Coordinates in data space
ya = [0 0]; % Y-Coordinates in data space
[xaf,yaf] = ds2nfu(xa,ya); % Convert to normalized figure units
annotation('arrow',xaf,yaf) % Add annotation

Note: I believe annotation was introduced in MATLAB 7.

引用

Michelle Hirsch (2026). Data space to figure units conversion (https://github.com/michellehirsch/MATLAB-Dataspace-to-Figure-Units), GitHub. に取得済み.

カテゴリ

Help Center および MATLAB AnswersImage Filtering and Enhancement についてさらに検索

MATLAB リリースの互換性

  • すべてのリリースと互換性あり

プラットフォームの互換性

  • Windows
  • macOS
  • Linux

GitHub の既定のブランチを使用するバージョンはダウンロードできません

バージョン 公開済み リリース ノート Action
1.2.0.0

Moved source to GitHub.

1.1.0.0

Updated copyright.

1.0.0.0

この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。
この GitHub アドオンでの問題を表示または報告するには、GitHub リポジトリにアクセスしてください。