次のプロットでポイントをマークする必要があります。
特に、赤い線を 25 にマークする必要があり、これは対応する y 軸の値です。どうすればいいですか?
ここを調べてみましたが、解決策がよくわかりませんでした (そのコードは正確に何をしているのですか??) が、それが必要かどうかはわかりません。次のような、座標付きの斜めの線がもっと欲しいです。
(2,5)
/
/
/
/
どうすればいいですか?
次のプロットでポイントをマークする必要があります。
特に、赤い線を 25 にマークする必要があり、これは対応する y 軸の値です。どうすればいいですか?
ここを調べてみましたが、解決策がよくわかりませんでした (そのコードは正確に何をしているのですか??) が、それが必要かどうかはわかりません。次のような、座標付きの斜めの線がもっと欲しいです。
(2,5)
/
/
/
/
どうすればいいですか?
これは主に、yuk のすでに完全な回答に対する補助的なものです。Matlabには、軸を実行するためのツールが同梱されていることがわかりました->図の座標変換。http://www.mathworks.com/help/matlab/creating_plots/positioning-annotations-in-data-space.htmlのディスカッションを参照してください。このページには、「textarrow」アノテーションの使用例も含まれています。
TL;DR:
addpath([docroot '/techdoc/creating_plots/examples'])
という関数を公開しますdsxy2figxy
。
使用例:
%Perform the addpath (this is relativly slow, try to only do it once.)
addpath([docroot '/techdoc/creating_plots/examples']) %Needed for dsxy2figxy
%Create some figure to look at
figure(219376); clf
x = linspace(0.8, 40, 1000);
y = 1./x;
plot(x,y, 'b-')
hold on
%Mark position 100
tipXy = dsxy2figxy(gca, x(100), y(100));
tailXy = dsxy2figxy(gca, mean(x), mean(y));
h = annotation('textarrow', [tailXy(1) tipXy(1)], [tailXy(1) tipXy(1)],...
'String',[' (' num2str(x(100)) ',' num2str(x(100)) ')']);