scatter
コマンドを使用してプロットされたいくつかのポイントにラベルを追加したいと思います。簡略化のために、のは、私は一点のみを持っているとしましょう:グラフにポイントを(縦に)ラベル付けする方法
x = 10;
pointSize = 100;
fontSize = 20;
P = scatter(x, 0, pointSize, [0,0,0], 'filled');
text(x, 0, 'pointLabel',...
'HorizontalAlignment', 'center',...
'VerticalAlignment', 'bottom',...
'FontSize', fontSize);
前のコマンドの問題点は、テキストpointLabel
プロパティpointsize
とfontSize
に割り当てられた値に応じて、ポイントP
と重なっていることです。
私はtext
コマンドのドキュメントを読んだことがありますが、例では、ラベルを図の特定のポイントに水平に並べる方法を示しています。配置を水平にする必要がある場合は簡単ですが、ラベルpointLabel
のy
座標を他の次元の値から計算する一般的な方法は見つかりませんでした。
明らかに私はさまざまな値の組み合わせをテストすることで良いアライメントに到達できますが、私は一般的な解決策を探しています。
私を助けることができる人はいますか?
'text'は** axes **ドメインの座標を受け入れます。つまり、一定のオフセット(たとえば「2」)を適用すると、場合によってはうまく見えるが、他の場合はひどく悪いことがあります。データの限界に基づいてオフセットを再スケーリングするか、または 'annotation'関数を考慮することができます。 'annotation'関数は** figure **座標を受け入れます。したがって、データの制限にかかわらず、例えば' 0.2'の一定のオフセット値が良く見える可能性が高くなります。 2番目のオプションでは、座標を変換する必要があります。 FEXの「単位を変換するデータ空間」を参照してください。 –