Main Content

textscatter

テキストの 2 次元散布図

説明

ts = textscatter(x,y,str) は、ベクトル x および y で指定された位置に str の要素を含むテキスト散布図を作成し、結果の TextScatter オブジェクトを返します。

ts = textscatter(xy,str) は、xy の行で指定された位置を使用します。この構文は、textscatter(xy(:,1),xy(:,2),str) と等価です。

ts = textscatter(ax,___) は、座標軸 ax にプロットします。前述の構文の任意の入力引数を使用できます。

ts = textscatter(___,Name,Value) は、1 つ以上の名前と値のペアの引数を使用して、追加の TextScatter プロパティを指定します。

すべて折りたたむ

数値の string 配列をテキスト散布図のランダムな点にプロットします。

x = rand(50,1);
y = rand(50,1);
str = string(1:50);
figure
textscatter(x,y,str);

または、xy の座標を行列 xy として渡すこともできます。ここで、xyxy の列です。

xy = [x y];
figure
textscatter(xy,str)

単語埋め込みのテキスト散布図を作成し、単語の色を指定します。

fastTextWordEmbedding を使用して、事前学習済みの単語埋め込みを読み込みます。この関数には、Text Analytics Toolbox™ Model for fastText English 16 Billion Token Word Embedding サポート パッケージが必要です。このサポート パッケージがインストールされていない場合、関数によってダウンロード用リンクが表示されます。

emb = fastTextWordEmbedding
emb = 
  wordEmbedding with properties:

     Dimension: 300
    Vocabulary: [1×1000000 string]

word2vec を使用して、最初の 500 語をベクトルに変換します。V は長さ 300 の単語ベクトルの行列です。

words = emb.Vocabulary(1:500);
V = word2vec(emb,words);
size(V)
ans = 1×2

   500   300

tsne を使用して単語ベクトルを 2 次元空間に埋め込みます。

XY = tsne(V);

2 次元テキスト散布図の XY で指定された座標に単語をプロットします。単語の色をランダムに指定します。

numWords = numel(words);
colorData = rand(numWords,3);
figure
textscatter(XY,words,'ColorData',colorData)
title("Word Embedding t-SNE Plot")

入力引数

すべて折りたたむ

x の値。ベクトルとして指定します。xy、および str は同じ長さでなければなりません。

例: [1 2 3]

y の値。ベクトルとして指定します。xy、および str は同じ長さでなければなりません。

例: [1 2 3]

x と y の値。2 列の行列として指定します。xy(i,1)xy(i,2) は、それぞれ str の i 番目の要素の x 値と y 値に対応します。xynumel(str) 個の行をもたなければなりません。

textscatter(xy,str) は、textscatter(xy(:,1),xy(:,2),str) と等価です。

例: [1 2 3]

入力テキスト。string ベクトルまたは文字ベクトルの cell 配列として指定します。xy、および str は同じ長さでなければなりません。

例: ["one" "two" "three"]

データ型: string | cell

axes オブジェクト。axes オブジェクトを指定しない場合、関数は現在の座標軸を使用します。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値の各ペアを区切り、Name を引用符で囲みます。

例: 'Marker','*' は、マーカーがアスタリスクであることを指定します。

ここにリストされている TextScatter オブジェクトのプロパティはサブセットにすぎません。完全なリストについては、TextScatter Properties を参照してください。

表示するテキスト データの割合。0 ~ 100 のスカラーとして指定します。すべてのテキストを表示するには、TextDensityPercentage を 100 に設定します。テキストを表示しない場合は、TextDensityPercentage を 0 に設定します。

TextDensityPercentage を 100 に設定した場合、ソフトウェアはマーカーをプロットしません。

例: 70

テキスト ラベルの最大長。正の整数として指定します。ソフトウェアは、テキスト ラベルをこの長さに切り捨て、切り捨て位置に省略記号を追加します。

例: 10

マーカーの色。次の値のいずれかとして指定します。

  • 'auto' — マーカーごとに、対応するテキスト ラベルと同じ色を使用します。

  • 'none' — マーカーを表示しません。

  • RGB 3 成分 — プロット内のすべてのマーカーに同じ色を使用します。RGB 3 成分は、各要素が色の赤、緑、および青の成分の強度を指定する 3 要素の行ベクトルです。強度は [0,1] の範囲内 (たとえば [0.5 0.6 0.7]) でなければなりません。

例: [1 0 0]

テキストの色。次の値のいずれかとして指定します。

  • RGB 3 成分 — プロット内のすべてのテキストに同じ色を使用します。RGB 3 成分は、各要素が色の赤、緑、および青の成分の強度を指定する 3 要素の行ベクトルです。強度は [0,1] の範囲内 (たとえば [0.5 0.6 0.7]) でなければなりません。

  • RGB 3 成分の 3 列の行列 — プロット内のテキスト ラベルごとに異なる色を使用します。行列の各行が 1 つの色を定義します。行数は、テキスト ラベルの数と等しくなければなりません。

  • categorical ベクトル — ベクトル内のカテゴリごとに異なる色を使用します。XData と同じ長さのベクトルとして ColorData を指定します。Colors プロパティを使用して各カテゴリの色を指定します。

例: [1 0 0; 0 1 0; 0 0 1]

カテゴリの色。RGB 3 成分の行列として指定します。RGB 3 成分は、各要素が色の赤、緑、および青の成分の強度を指定する 3 要素の行ベクトルです。強度は [0,1] の範囲内 (たとえば [0.5 0.6 0.7]) でなければなりません。

既定では、Colors は、axes オブジェクトの ColorOrder プロパティと同じです。

例: [1 0 0; 0 1 0; 0 0 1]

出力引数

すべて折りたたむ

TextScatter オブジェクト。テキスト散布図の作成後にそのプロパティにアクセスして変更するには、ts を使用します。詳細については、TextScatter Properties を参照してください。

バージョン履歴

R2017b で導入