チャートへのテキストの追加
この例では、チャートにテキストを追加し、テキストの位置とサイズを制御し、複数行のテキストを作成する方法を示します。
テキスト位置
関数 text
を使用して、特定のデータ点の横にテキストを追加します。ここでは、点 にテキストを追加します。関数 text
の最初の 2 つの入力引数は、位置を指定します。3 番目の引数は、テキストを指定します。
テキストは、既定で TeX マークアップのサブセットをサポートしています。ギリシャ文字 には TeX マークアップ \pi
を使用します。TeX マークアップ \leftarrow
を含めることで、左向き矢印を表示します。マークアップの完全なリストについては、チャートのテキスト内のギリシャ文字と特殊文字を参照してください。
x = linspace(0,10,50);
y = sin(x);
plot(x,y)
txt = '\leftarrow sin(\pi) = 0';
text(pi,sin(pi),txt)
テキスト配置
既定では、指定したデータ点はテキストの左側に配置されます。データ点をテキストの右側に合わせるには、HorizontalAlignment
プロパティを 'right'
として指定します。左ではなく右向き矢印を使用します。
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = 'sin(\pi) = 0 \rightarrow'; text(pi,sin(pi),txt,'HorizontalAlignment','right')
フォント サイズ
テキストのフォント サイズを指定するには、FontSize
プロパティを関数 text
の名前と値のペアの引数として設定します。関数 title
、xlabel
、ylabel
、または、legend
を使用している場合には、同様の方法を使用してフォント サイズを変更できます。
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = '\leftarrow sin(\pi) = 0'; text(pi,sin(pi),txt,'FontSize',14)
あるいは、R2022a 以降、関数fontsize
を使用して、座標軸テキストのフォント サイズを変更できます。
text プロパティの設定
関数 text は、Text オブジェクトを作成します。Text
オブジェクトには、HorizontalAlignment
や FontSize
など、テキストの外観をカスタマイズするために使用できるプロパティがあります。
次の 2 つの方法でプロパティを設定できます。
text
コマンドで、'FontSize',14
のように名前と値のペアを使用。Text
オブジェクトを使用。Text
オブジェクトを、関数text
の出力引数として返し、変数 (たとえば、t
) に代入できます。次に、t.FontSize = 14
のように、ドット表記を使用してプロパティを設定します。
この例では、名前と値のペアではなく、ドット表記を使用してフォント サイズを変更します。
x = linspace(0,10,50);
y = sin(x);
plot(x,y)
txt = '\leftarrow sin(\pi) = 0';
t = text(pi,sin(pi),txt)
t = Text (\leftarrow sin(\pi) = 0) with properties: String: '\leftarrow sin(\pi) = 0' FontSize: 10 FontWeight: 'normal' FontName: 'Helvetica' Color: [0 0 0] HorizontalAlignment: 'left' Position: [3.1416 1.2246e-16 0] Units: 'data' Use GET to show all properties
t.FontSize = 14;
複数行のテキスト
複数行にわたってテキストを表示するには、文字ベクトルの cell 配列を使用します。cell 配列の各要素は、1 行のテキストです。この例では、2 行のタイトルを表示します。同様の方法を使用して、関数 title
、xlabel
、ylabel
、または legend
で複数行のテキストを表示できます。
x = linspace(0,10,50); y = sin(x); plot(x,y) txt = {'Plotted Data:','y = sin(x)'}; text(4,0.5,txt)
変数値をもつテキスト
変数値をテキストに含めるには、関数 num2str
を使用して数値をテキストに変換します。この例では、平均の y 値を計算し、タイトルに値を含めます。同様の方法を使用して、関数 title
、xlabel
、ylabel
、または legend
に変数値を含めることができます。
x = linspace(0,10,50); y = sin(x); plot(x,y) avg = mean(y); txt = ['Average height: ' num2str(avg) ' units']; text(4,0.5,txt)
座標軸外のテキスト
関数 text
の代わりに関数 annotation
を使用して、Figure 内の任意の場所にテキストを追加します。最初の入力引数は、注釈のタイプを指定します。2 番目の入力引数は、Figure に対して正規化された単位で注釈の位置を指定します。テキスト ボックスの境界線を削除するには、EdgeColor
プロパティを 'none'
に設定します。テキスト ボックスの注釈の詳細については、関数annotation
を参照してください。
x = linspace(0,10,50); y = sin(x); plot(x,y) annotation('textbox',[.9 .5 .1 .2], ... 'String','Text outside the axes','EdgeColor','none')
参考
text
| title
| xlabel
| ylabel
| annotation
| fontsize