Создайте облако слов графика из текстовых данных
wordcloud(___,
задает дополнительные Name,Value
)WordCloudChart
свойства с использованием одного или нескольких аргументов пары "имя-значение".
wordcloud(
создает облако слов на рисунке, панели или вкладке, заданных как parent
,___)parent
.
возвращает wc
= wordcloud(___)WordCloudChart
объект. Использование wc
для изменения свойств облака слов после его создания. Список свойств см. в разделе Свойства WordCloudChart.
Примечание
Symbolic Math Toolbox расширяет функциональность wordcloud
(MATLAB®) функцию. Он добавляет поддержку для создания облаков слов непосредственно из строковых массивов и создания облаков слов из моделей мешка слов, моделей мешка n-грамма и тем LDA. Для wordcloud
(Symbolic Math Toolbox) страница с описанием, см. wordcloud
(Symbolic Math Toolbox).
Загрузите пример данных sonnetsTable
. Таблица tbl
содержит список слов в переменной Word
, и соответствующая частота отсчитывается в переменной Count
.
load sonnetsTable
head(tbl)
ans=8×2 table
Word Count
___________ _____
{'''tis' } 1
{''Amen'' } 1
{''Fair' } 2
{''Gainst'} 1
{''Since' } 1
{''This' } 2
{''Thou' } 1
{''Thus' } 1
Постройте график данных таблицы с помощью wordcloud
. Задайте слова и соответствующие размеры слов, которые будут Word
и Count
переменные соответственно.
figure wordcloud(tbl,'Word','Count'); title("Sonnets Word Cloud")
Если у вас Toolbox™ установлена Text Analytics, то можно создать облака слов непосредственно из строковых массивов. Для получения дополнительной информации смотрите wordcloud
(Symbolic Math Toolbox) (Symbolic Math Toolbox). Если у вас нет Symbolic Math Toolbox, то необходимо предварительно обработать текстовые данные вручную.
Этот пример показов, как создать облако слов из простого текста путем чтения его в строковые массивы, предварительной обработки и передачи в wordcloud
функция.
Прочитайте текст из Сонетов Шекспира с fileread
и преобразуйте его в строку.
sonnets = string(fileread('sonnets.txt')); extractBefore(sonnets,"II")
ans = "THE SONNETS by William Shakespeare I From fairest creatures we desire increase, That thereby beauty's rose might never die, But as the riper should by time decease, His tender heir might bear his memory: But thou, contracted to thine own bright eyes, Feed'st thy light's flame with self-substantial fuel, Making a famine where abundance lies, Thy self thy foe, to thy sweet self too cruel: Thou that art now the world's fresh ornament, And only herald to the gaudy spring, Within thine own bud buriest thy content, And tender churl mak'st waste in niggarding: Pity the world, or else this glutton be, To eat the world's due, by the grave and thee. "
Разделение sonnets
в строковые массивы, элементы которого содержат отдельные слова. Для этого удалите символы пунктуации и соедините все строковые элементы в строку 1 на 1, а затем разделите пробелы. Затем удалите слова менее чем с пятью символами и преобразуйте слова в строчные.
punctuationCharacters = ["." "?" "!" "," ";" ":"]; sonnets = replace(sonnets,punctuationCharacters," "); words = split(join(sonnets)); words(strlength(words)<5) = []; words = lower(words); words(1:10)
ans = 10x1 string
"sonnets"
"william"
"shakespeare"
"fairest"
"creatures"
"desire"
"increase"
"thereby"
"beauty's"
"might"
Преобразование sonnets
в категориальный массив и затем постройте график с помощью wordcloud
. А графики функций уникальные элементы C
с размерами, соответствующими их отсчетам частот.
C = categorical(words);
figure
wordcloud(C);
title("Sonnets Word Cloud")
Создайте облако слов из простого текста путем чтения его в строковые массивы, предварительной обработки и передачи в wordcloud
функция.
Прочитайте текст из Сонетов Шекспира с fileread
и преобразуйте его в строку.
sonnets = string(fileread('sonnets.txt')); extractBefore(sonnets,"II")
ans = "THE SONNETS by William Shakespeare I From fairest creatures we desire increase, That thereby beauty's rose might never die, But as the riper should by time decease, His tender heir might bear his memory: But thou, contracted to thine own bright eyes, Feed'st thy light's flame with self-substantial fuel, Making a famine where abundance lies, Thy self thy foe, to thy sweet self too cruel: Thou that art now the world's fresh ornament, And only herald to the gaudy spring, Within thine own bud buriest thy content, And tender churl mak'st waste in niggarding: Pity the world, or else this glutton be, To eat the world's due, by the grave and thee. "
Разделение sonnets
в строковые массивы, элементы которого содержат отдельные слова. Для этого удалите символы пунктуации и соедините все строковые элементы в строку 1 на 1, а затем разделите пробелы. Затем удалите слова менее чем с пятью символами и преобразуйте слова в строчные.
punctuationCharacters = ["." "?" "!" "," ";" ":"]; sonnets = replace(sonnets,punctuationCharacters," "); words = split(join(sonnets)); words(strlength(words)<5) = []; words = lower(words); words(1:10)
ans = 10x1 string
"sonnets"
"william"
"shakespeare"
"fairest"
"creatures"
"desire"
"increase"
"thereby"
"beauty's"
"might"
Найти уникальные слова в sonnets
и подсчитайте их частоту. Создайте облако слов, используя счетчики частот как данные о размере.
[numOccurrences,uniqueWords] = histcounts(categorical(words));
figure
wordcloud(uniqueWords,numOccurrences);
title("Sonnets Word Cloud")
Загрузите пример данных sonnetsTable
. Таблица tbl
содержит список слов в Word
переменная и соответствующие счетчики частот в Count
переменная.
load sonnetsTable
head(tbl)
ans=8×2 table
Word Count
___________ _____
{'''tis' } 1
{''Amen'' } 1
{''Fair' } 2
{''Gainst'} 1
{''Since' } 1
{''This' } 2
{''Thou' } 1
{''Thus' } 1
Постройте график данных таблицы с помощью wordcloud
. Задайте слова и соответствующие размеры слов, которые будут Word
и Count
переменные соответственно. Чтобы задать цвета слов случайными значениями, установите 'Color'
в случайную матрицу или триплеты RGB с одной строкой для каждого слова.
numWords = size(tbl,1); colors = rand(numWords,3); figure wordcloud(tbl,'Word','Count','Color',colors); title("Sonnets Word Cloud")
Если у вас установлен Symbolic Math Toolbox, то можно создавать облака слов непосредственно из строковых массивов. Если у вас нет Symbolic Math Toolbox, то необходимо предварительно обработать текстовые данные вручную. Пример создания облака слов без Symbolic Math Toolbox см. в разделе Подготовка текстовых данных для облаков Word.
Извлеките текст из sonnets.txt
использование extractFileText
.
str = extractFileText("sonnets.txt"); extractBefore(str,"II")
ans = "THE SONNETS by William Shakespeare I From fairest creatures we desire increase, That thereby beauty's rose might never die, But as the riper should by time decease, His tender heir might bear his memory: But thou, contracted to thine own bright eyes, Feed'st thy light's flame with self-substantial fuel, Making a famine where abundance lies, Thy self thy foe, to thy sweet self too cruel: Thou that art now the world's fresh ornament, And only herald to the gaudy spring, Within thine own bud buriest thy content, And tender churl mak'st waste in niggarding: Pity the world, or else this glutton be, To eat the world's due, by the grave and thee. "
Отобразите слова из сонетов в облаке слов.
figure wordcloud(str);
wordVar
- Табличная переменная для данных словаТабличная переменная для данных слова, заданная как строковый скаляр, вектор символов, числовой индекс или логический вектор.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
sizeVar
- Табличная переменная для данных о размереТабличная переменная для данных размера, заданная как строковый скаляр, вектор символов, числовой индекс или логический вектор.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| char
| string
C
- Входные категориальные данныеВходные категориальные данные, заданные как категориальный массив. О графики функций каждый уникальный элемент C
с размером, соответствующим histcounts(C)
.
Типы данных: categorical
words
- Входные словаВходные слова, заданные как строковый вектор или массив ячеек из векторов символов.
Типы данных: string
| cell
sizeData
- Данные размера словаДанные о размере слова, заданные как числовой вектор.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
parent
- Родительский контейнерFigure
| объекта Panel
| объекта Tab
| объекта TiledChartLayout
| объекта GridLayout
объектРодительский контейнер, заданный как Figure
, Panel
, Tab
, TiledChartLayout
, или GridLayout
объект.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'HighlightColor','red'
устанавливает красный цвет подсветки.The WordCloudChart
перечисленные здесь свойства являются только подмножеством. Полный список см. в разделе Свойства WordCloudChart.
'MaxDisplayWords'
- Максимальное количество слов для отображенияМаксимальное количество слов для отображения, заданное как неотрицательное целое число. Программное обеспечение отображает MaxDisplayWords
самые большие слова.
'Color'
- Цвет слова[0.2510 0.2510 0.2510]
(по умолчанию) | триплет RGB | символьный вектор, содержащий имя цвета | матрицуЦвет слова, заданный как триплет RGB, вектор символов, содержащий название цвета или N
-by-3 матрица, где N
- длина WordData
. Если Color
является матрицей, тогда каждая строка соответствует триплету RGB для соответствующего слова в WordData
.
Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; например, [0.4 0.6 0.7]
.
Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#
), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0
на F
. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
являются эквивалентными.
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|
[0 0.4470 0.7410] | '#0072BD' | |
[0.8500 0.3250 0.0980] | '#D95319' | |
[0.9290 0.6940 0.1250] | '#EDB120' | |
[0.4940 0.1840 0.5560] | '#7E2F8E' | |
[0.4660 0.6740 0.1880] | '#77AC30' | |
[0.3010 0.7450 0.9330] | '#4DBEEE' | |
[0.6350 0.0780 0.1840] | '#A2142F' |
Пример: 'blue'
Пример: [0 0 1]
'HighlightColor'
- Цвет подсветки слова[0.8510 0.3255 0.0980]
(по умолчанию) | триплет RGB | символьный вектор, содержащий название цветаЦвет подсветки Word, заданный как триплет RGB или вектора символов, содержащий название цвета. Программа подсвечивает самые большие слова с этим цветом.
Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; например, [0.4 0.6 0.7]
.
Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#
), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0
на F
. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
являются эквивалентными.
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию, которые MATLAB использует во многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|
[0 0.4470 0.7410] | '#0072BD' | |
[0.8500 0.3250 0.0980] | '#D95319' | |
[0.9290 0.6940 0.1250] | '#EDB120' | |
[0.4940 0.1840 0.5560] | '#7E2F8E' | |
[0.4660 0.6740 0.1880] | '#77AC30' | |
[0.3010 0.7450 0.9330] | '#4DBEEE' | |
[0.6350 0.0780 0.1840] | '#A2142F' |
Пример: 'blue'
Пример: [0 0 1]
'Shape'
- Форма облака слов'oval'
(по умолчанию) | 'rectangle'
Форма облачного графика слов, заданная как 'oval'
или 'rectangle'
.
Пример: 'rectangle'
'LayoutNum'
- Макет размещения словМакет размещения слов, заданный как неотрицательное целое число. Если вы неоднократно звоните wordcloud
с теми же входами макеты размещения слов будут совпадать каждый раз. Чтобы получить различные макеты размещения слов, используйте различные значения LayoutNum
.
wc
— WordCloudChart
объектWordCloudChart
объектWordCloudChart
объект. Можно изменять свойства WordCloudChart
после создания. Дополнительные сведения см. в разделе Свойства WordCloudChart.
Symbolic Math Toolbox расширяет функциональность wordcloud
(MATLAB) функция. Он добавляет поддержку для создания облаков слов непосредственно из строковых массивов и создания облаков слов из моделей мешка слов, моделей мешка n-грамма и тем LDA. Для wordcloud
(Symbolic Math Toolbox) страница с описанием, см. wordcloud
(Symbolic Math Toolbox).
Указания и ограничения по применению:
Синтаксис wc = wordcloud(str)
, где str
- строковые массивы, вектор символов или массив ячеек векторов символов (эти входы требуют Symbolic Math Toolbox) не поддерживаются.
Когда words
и sizedata
входы предоставляются как длинные массивы, затем они собираются в память и, таким образом, должны помещаться в память.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.