exponenta event banner

textscatter

2-D график разброса текста

Описание

пример

ts = textscatter(x,y,str) создает график разброса текста с элементами str в местоположениях, указанных векторами x и yи возвращает результирующее значение TextScatter объект.

пример

ts = textscatter(xy,str) использует расположения, указанные строками xy. Этот синтаксис эквивалентен textscatter(xy(:,1),xy(:,2),str).

ts = textscatter(ax,___) графики в осях ax. Можно использовать любые входные аргументы из предыдущих синтаксисов.

ts = textscatter(___,Name,Value) указывает дополнительные TextScatter с использованием одного или нескольких аргументов пары имя-значение.

Примеры

свернуть все

Постройте строковый массив чисел в случайных точках на графике разброса текста.

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

Figure contains an axes. The axes contains an object of type textscatter.

Кроме того, можно передать координаты x и y в виде матрицы xy, где x и y являются столбцами xy.

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

Figure contains an axes. The axes contains an object of type textscatter.

Создайте график разброса текста для встраивания слова и укажите цвета слов.

Загрузить предварительно подготовленное вложение слов с помощью fastTextWordEmbedding. Для выполнения этой функции требуется модель Text Analytics Toolbox™ для пакета поддержки внедрения Token Word на английском языке на 16 миллиардов. Если этот пакет поддержки не установлен, функция предоставляет ссылку для загрузки.

emb = fastTextWordEmbedding
emb = 
  wordEmbedding with properties:

     Dimension: 300
    Vocabulary: [1×1000000 string]

Преобразование первых 500 слов в векторы с помощью word2vec. V является матрицей векторов слов длиной 300.

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

   500   300

Встраивание векторов слов в двумерное пространство с помощью tsne.

XY = tsne(V);

Постройте график слов в координатах, указанных XY на 2-D графике разброса текста. Укажите случайные цвета слов.

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

Входные аргументы

свернуть все

Значения x, указанные как вектор. x, y, и str должна быть одинаковой длины.

Пример: [1 2 3]

значения y, заданные как вектор. x, y, и str должна быть одинаковой длины.

Пример: [1 2 3]

Значения x и y задаются как матрица с двумя столбцами. xy(i,1) и xy(i,2) соответствуют значениям x и y i-го элемента strсоответственно. xy должны иметь numel(str) строк.

textscatter(xy,str) эквивалентно textscatter(xy(:,1),xy(:,2),str).

Пример: [1 2 3]

Входной текст, заданный как строковый массив или массив ячеек символьных векторов. x, y, и str должна быть одинаковой длины.

Пример: ["one" "two" "three"]

Типы данных: string | cell

Объект Axes. Если объект axes не указан, функция использует текущие оси.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Marker','*' указывает, что маркеры должны быть звездочками.

TextScatter перечисленные здесь свойства объекта являются только подмножеством. Полный список см. в разделе Свойства TextScatter.

Процент отображаемых текстовых данных, указанный как скаляр от 0 до 100. Для отображения всего текста установите TextDensityPercentage до 100. Чтобы не показывать текст, установите TextDensityPercentage в 0.

Если установить TextDensityPercentage до 100, то программное обеспечение не строит маркеры.

Пример: 70

Максимальная длина текстовых меток, заданная как положительное целое число. Программа усекает текстовые метки до этой длины и добавляет эллипсы в точке усечения.

Пример: 10

Цвета маркеров, указанные как одно из следующих значений:

  • 'auto' - Для каждого маркера используется тот же цвет, что и для соответствующих текстовых меток.

  • 'none' - Не показывать маркеры.

  • Триплет RGB - использовать одинаковый цвет для всех маркеров на графике. Триплет RGB - это трехэлементный вектор строки, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.5 0.6 0.7].

Пример: [1 0 0]

Цвета текста, указанные как одно из следующих значений:

  • Триплет RGB - использовать один и тот же цвет для всего текста на графике. Триплет RGB - это трехэлементный вектор строки, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.5 0.6 0.7].

  • Трехстолбцовая матрица триплетов RGB - для каждой текстовой метки на графике используется разный цвет. Каждая строка матрицы определяет один цвет. Число строк должно совпадать с количеством текстовых меток.

  • Категориальный вектор - используйте разные цвета для каждой категории в векторе. Определить ColorData в виде вектора той же длины, что и XData. Укажите цвета для каждой категории с помощью Colors собственность

Пример: [1 0 0; 0 1 0; 0 0 1]

Цвета категорий, заданные как матрица триплетов RGB. Триплет RGB - это трехэлементный вектор строки, элементы которого задают интенсивности красной, зеленой и синей составляющих цвета. Интенсивности должны находиться в диапазоне [0,1]; например, [0.5 0.6 0.7].

По умолчанию Colors равно ColorOrder свойства объекта axes.

Пример: [1 0 0; 0 1 0; 0 0 1]

Выходные аргументы

свернуть все

TextScatter объект. Использовать ts для доступа и изменения свойств текстовой диаграммы рассеяния после ее создания. Дополнительные сведения см. в разделе Свойства TextScatter.

Представлен в R2017b