форма для текста облако
Создаем облако слов в Python
Создаем облако слов в Python
Облако слов в Python представляет собой визуализированный набор слов с наибольшей частотой использования в тексте или базе данных. Чем чаще встречается слово в источнике, тем большим размером шрифта оно написано в облаке слов. Таким образом, благодаря визуальным эффектам, читатель с первого взгляда на, казалось бы, мило перемешанную кашу из слов, способен сформировать общее представление о сути текста или содержимого базы данных. Выходит, эта «каша» — весьма полезное блюдо для анализа данных, поэтому самое время взглянуть на рецепт приготовления и сформировать облако слов в Python!
В качестве примера мы рассмотрим датасет с информацией о статьях текущего сайта. Сформируем облако слов в Python на основе текстовой информации из колонки «Title». Действовать будем поэтапно:
Итак, открываем редактор, потому как пришло время покодить!
1. Загружаем датасет
Скачать файл с данными можно по ссылке: «articles.csv». Для загрузки датасета нам необходимо импортировать библиотеку pandas, после чего можно загружать данные из файла в переменную data с помощью функции open(). Так как у меня датасет находится в одной папке со скриптом, то относительный путь, передаваемый в качестве аргумента функции open(), совпадает с названием файла:
Отлично, данные загружены, можно приступать к созданию облака слов!
2. Создаем первое облако слов в Python — знакомимся с основным принципом на сырых данных:
Сейчас мы намеренно пропустим процесс подготовки данных, чтобы посмотреть, какое облако слов сформируется из сырого текста. Единственное, что нам потребуется сделать — это объединить данные из колонки «Title» в один текст. Это легко сделать с помощью функции «join» — добавленная строка выделена подсветкой:
А теперь загрузим класс WordCloud из библиотеки wordcloud и сгенерируем облако слов с помощью функции generate(). В качестве аргумента функции generate() передадим наш текст. После этого выведем сгенерированное облако с помощью библиотеки matplotlib. Добавленные на этом этапе строки выделены в коде подсветкой:
В результате исполнения кода, получим:
3. Осуществляем предобработку текста
3.1. Удаляем стоп-слова
На первый взгляд, получилось довольно приятное облако. Однако, после второго взгляда хочется воскликнуть: «Обманули! Подменили. » и так далее. Ведь мы на самом деле ожидали, что крупным шрифтом будут написаны основные значащие слова, а вместо этого на переднем плане оказались теряющие смысл без контекста предлоги: «как, в, на, и». Эти предлоги называются стоп-словами, и они действительно чаще всего используются в нашей речи, однако в большинстве случаев при анализе текста, являются лишним шумом. Этот фактор был учтен создателями библиотеки wordcloud, и для объекта облака слова WordCloud() был добавлен параметр stopwords. По умолчанию, значение этого параметра «None», это значит, что функция использует встроенный список стоп-слов, среди которых присутствуют английские слова, но нет русских. Поэтому при выводе облака слов на основе английского текста, не нужно менять значение параметра stopwords — предлоги, союзы и прочие артикли будут исключены автоматически. В нашем же случае, необходимо передать параметру stopwords список со стоп-словами русского языка. Этот список есть в библиотеке nltk. Давайте это сделаем! (добавленные строки выделены подсветкой):
3.2. Разбиваем текст на токены и получаем леммы
Отлично! Теперь предлоги исчезли из облака слов! Однако, выводятся слова с разными склонениями, такие как «помощи», «изображений», «файла» и т. д. Конечно, можно оставить оставить эти слова в покое, однако я предлагаю добавить немного строк кода, чтобы привести их все к основной форме до загрузки текста в функцию generate(). Для этого мы будем использовать библиотеку созданную для лемматизации русского и украинского языков под названием pymorphy2. Однако, предварительно, нам потребуется разбить текст на слова, другими словами, токенизировать текст:
63450/w:588/h:296/q:90/https://webtort.ru/wp-content/uploads/2021/04/cloud3.png» /> Облако слов после лемматизации
Отлично! Теперь содержание нашего облака на высоте, а значит, пришло время побаловаться с параметрами WordCloud и поправить обертку! Для начала я предлагаю изменить форму облака слов!
4. Меняем форму облака слов
Реализуем задуманное: загрузим изображение «plane.jpg» и определим параметры в WordCloud():
Посмотрим на результат:
Неплохо, однако, не мешало бы поиграться с параметрами WordCloud, изменить размеры изображения и цвета на свой вкус.
Редактируем облако слов в Python: меняем фон, цветовую схему и максимальное количество слов
У объекта WordCloud довольно много настраиваемых параметров. Описание всех параметров можно найти по ссылке в документации. Сейчас мы изменим значения лишь некоторых из них:
Таким образом, после внесенных изменений итоговый код имеет вид:
Отлично! Теперь полученное облако слов выводится в виде симпатичного самолета:
Заключение:
Поздравляю вас с успешно проделанной работой! Мы изучили основной принцип формирования облака слов в Python, подготовили русский текст для формирования корректного облака, а также научились менять цвет и форму облака слов. В итоге у нас получилось 2 вида облаков: стандартное облако в виде прямоугольника, и облако в форме самолета!
Визуализируй это! Облако слов на Python
Создаём простую и красивую инфографику из странички на «Википедии».
В любой непонятной ситуации дата-сайентист визуализирует данные: это, среди прочего, облегчает поиск инсайтов и формулирование гипотез для проверки.
«Облако слов» — визуализация текстовых данных на стыке исследовательского анализа, инфографики и дата-дизайна. Это самый первый и быстрый взгляд на большие и слабо структурированные тексты: художественные, научные, информационные.
Главные причины использовать облако слов:
Мы будем работать в блокноте Google Colab — то есть прямо в браузере, код напишем на языке Python, а текст возьмём из «Википедии». Если что-то пойдёт не так — всегда можно свериться с нашим блокнотом: все ссылки есть в конце статьи.
С некоторых пор утверждает, что он data scientist. В предыдущих сезонах выдавал себя за математика, звукорежиссера, радиоведущего, переводчика, писателя. Кандидат наук, но не точных. Бесстрашно пишет о Data Science и программировании на Python.
Подготовка к работе
Для начала работы в Colab достаточно войти в свой Gmail и запустить приветственный блокнот в браузере. Не помешает и прочитать пару наших статей: про Colab и про Python-минимум для дата-сайентиста.
После запуска колаба нужно установить библиотеку для работы с «Википедией» и библиотеку stop-words, в которой содержатся списки стоп-слов для анализа текстов на разных языках.
Запустите каждую команду в отдельной кодовой ячейке: так проще отследить результат выполнения.
Визуализация. 5 онлайн-сервисов для создания облака тегов и слов на русском языке
Материал обновлен в сентябре 2021 года. Частота слов в статье, акцент на важных терминах или популярность упоминаний в тексте – все это можно сделать с помощью облака слов. Предлагаем подборку из четырех онлайн-сервисов, которые позволят сделать облако слов быстро и визуально красиво.
1. Word It Out
Это один из самых простых сервисов, который позволяет делать облако слов без регистрации из вводимого текста или ссылки.
В настройках можно поменять шрифт, цвета слов и фона. Удобной является кнопка случайных настроек, с помощью которой можно генерировать разные варианты. Плюс сервиса – правильное отображение кириллических шрифтов.
После создания облака его можно скачать в виде изображения или поделиться с помощью ссылки.
2. Tagxedo
Сервис не требует регистрации и позволяет создавать облака слов разной формы из представленной библиотеки, загрузив текст или указав ссылку на страницу с нужным текстом.
В настройках можно изменить цветовую схему, параметры текста, а также ориентацию слов в пространстве. Кириллица отображается корректно.
После создания облака слов его можно сохранить к себе на компьютер в виде картинки в формате jpg или png, выбрав нужное качество.
3. Tagul
Этот сервис также позволяет создать облако слов непосредственно в окне вашего браузера, но требует быстрой регистрации с помощью одного из ваших аккаунтов в социальных сетях.
После завершения создания облако слов можно скачать на свой компьютер в формате png, а также поделиться им с помощью ссылки (при наведении на слово оно будет увеличиваться). В Pro-версии сервиса есть возможность скачать векторный svg-файл.
4. Word Cloud
Онлайн-сервис от Jason Davies для создания облака слов, где можно указывать угол расположения слов, а не только вертикально и горизонтально.
Также можно поменять шрифт, указать количество слов для составления облака, а результат можно скачать как в формате png, так и в svg.
Минус этого сервиса – не совсем корректное отображение слов на кириллице. При этом способ загрузки слов стандартен: можно ввести текст или указать ссылку.
Как создать облако тегов: бесплатные плагины и сервисы
Облако тегов, оно же облако слов, – это специальный блок на сайте, который содержит названия разделов или какие-то ключевые слова. Облако слов на сайте может использоваться в качестве навигационного или дизайнерского элемента.
Облако может располагаться на любых страницах сайта, например, на главной, если оно используется в качестве навигационного элемента.
Рассмотрим бесплатные сервисы и WordPress-плагины, которые помогут вам создать облако тегов на своем сайте.
Немного теории
Функции, которые может выполнять облако тегов
Как выглядит облако тегов
Выглядеть облако с ключевыми словами может абсолютно по-разному. Его форма, размеры, шрифты – все это кастомизируется. Самые первые облака тегов были довольно примитивными – в них использовались стандартные, скучные шрифты. Отличался только размер кегля:
Чуть позже появились красивые трехмерные облака, которые создавались при помощи флеша (сейчас эта технология уже неактуальна) или при помощи того же HTML. Сегодня создать красивое и функциональное облако можно буквально в пару кликов. Как это сделать – узнаем далее.
Как создать облако тегов
Сделать это можно как вручную, так и при помощи автоматических инструментов. К последним относятся готовые плагины для CMS и онлайн-сервисы.
Какой именно инструмент использовать для создания облака тегов, зависит от вашего сайта. Если он полностью самописный, возможно, придется прописывать HTML или воспользоваться инструкцией, которую предлагает выбранный вами сервис. Если же сайт работает на одной из популярных CMS, то можно обойтись плагином.
Установка «неродного» вашей CMS облака часто происходит путем интеграции HTML-кода в шаблон сайта.
Облако тегов на WordPress
Облако тегов изначально появилось в CMS WordPress. И по сей день там его можно настроить без всяких плагинов, достаточно активировать облако в виджетах:
Такое облако будет выводить теги, которые были присвоены минимум одной записи на сайте. Добавить это облако меток можно как в подвал, так и в сайдбар.
Конечно, это стандартный, а значит – безликий с точки зрения дизайна блок. Так что он может просто не подойти к дизайну вашего сайта:
Кастомизировать дизайн стандартного облака меток WordPress можно при помощи редактирования системного файла functions.php. Останавливаться подробнее не буду, так как придется кодить и это не совсем простой для обычных пользователей способ. Поэтому для кастомизации стандартного облака меток WordPress я рекомендую использовать сторонние плагины.
Бесплатные WordPress-плагины для создания интерактивного облака тегов
Плагинов для облака тегов много, но некоторые устарели. Я предлагаю познакомиться только с актуальными расширениями, которые точно работают на последней версии WordPress.
Cool Tag Cloud
Один из самых популярных плагинов – это Cool Tag Cloud от разработчика WPKube.
Облака тегов, созданные с помощью Cool Tag Cloud
С точки зрения функционала плагин вполне неплох, но ничего особо выдающегося здесь нет. Учтите, что дизайн облака Cool Tag Cloud также весьма специфичен и может не вписываться в оформление вашего сайта. Тем не менее, свою главную функцию – создание облака с интерактивными ссылками – плагин выполняет отлично.
Доступно множество настроек: шрифты, размер кегля, стиль изображения, анимация, максимальное количество тегов и пр.
HTML5 Cumulus
Это плагин с многолетней историей. Ранее назывался WP-Cumulus. Созданное с его помощью облако тегов будет правильно выводиться не только в десктопных, но и в мобильных браузерах. Например, так:
Примеры облаков, созданных в HTML5 Cumulus
Плагин работает через виджет сайдбара. На выходе мы получаем трехмерное облако тегов с возможностью доскональной настройки:
Чтобы воспользоваться плагином, просто установите его через админку WordPress. Затем откройте раздел «Внешний вид», кликните пункт «Виджеты» и добавьте Cumulus в сайдбар.
Tag Groups
Мощный плагин, позволяющий организовывать теги WordPress в группы (либо в алфавитном порядке) и отображать их в облаке.
Так выглядит облако Tag Groups на странице (обратите внимание на сортировку по алфавиту):
Использовать облако тегов Tag Groups можно в постах, на страницах и прямо в виджетах
Всего доступно пять видов облаков (вкладки, «аккордеон», список, алфавитный порядок).
Для тегов в облаке можно настроить:
Creative Tag Cloud
Интересный плагин, который позволит выделить ваш WordPress-сайт при помощи красочного облака тегов. Необычное отображение тегов в облаке – волнообразное или спиральное:
Плагин Creative Tag Cloud позволяет создавать облака необычной формы. Чем чаще используются теги, тем они крупнее (расположены в начале спирали или волны)
Созданные облака можно вставлять в посты или использовать на страницах. Просто вставлять их через виджет или проставлять на странице/в посте шорткодом.
В настройках плагина довольно много параметров, с которыми нужно будет экспериментировать (размер слов, количество циклов, расстояние между тегами). Можно менять цвета: плагин поставляется с палитрой по умолчанию, которую можно активировать прямо в виджете или добавив color=1 в шорткод. Естественно, понадобятся базовые знания CSS, чтобы работать с пользовательскими цветами.
3D Tag Cloud
3D Tag Cloud позволяет создать вращающиеся (трехмерные) теги на любой странице вашего сайта.
В новой версии (в панели администратора) добавлены новые параметры:
Плагин позволяет кастомизировать:
Чтобы получить симпатичное облако, так же, как и с предыдущим плагином, придется основательно поэкспериментировать с настройками.
Categorized Tag Cloud
Categorized Tag Cloud, или «Облако категоризированных тегов» – это плагин для WordPress, позволяющий создать облако с ручным добавлением тегов. Размещение – только в сайдбаре.
Слова внутри облака фильтруются по категориям + можно удалить все ненужные теги и добиться максимальной релеватности контенту своего сайта.
Настроить можно следующие параметры:
Бесплатные сервисы для создания дизайнерского облака тегов
Эти сервисы позволяют создать «автономное» облако тегов. На выходе вы получите так называемые SVG-фигуры (SVG – это формат векторной графики).
По умолчанию слова в таком облаке будут некликабельными. Но есть как минимум три способа сделать их интерактивными:
Word Cloud Generator
Чтобы начать редактировать свое первое облако, необязательно даже регистрироваться, указывать e-mail или что-то еще. Достаточно открыть сайт и указать список всех ключевых слов, при необходимости – настроить отображение облака:
На выходе получим примерно такое облако:
Сервис полностью поддерживает кириллицу и позволяет настраивать угол (ориентацию) слов по отношению друг к другу. Также доступна настройка шрифта, общего количество слов, можно указать одно слово на линию.
После того, как мы закончили настраивать созданное облако, его необходимо сохранить и добавить на свой сайт (в качестве изображения на одной из страниц, например).
Tagxedo
Незамысловатый, но функциональный сервис. Продуманный интерфейс с минимальным функционалом. На старте предлагает создать обычное облако слов или облако из ваших блогов, твитов, меток:
Доступно более десятка оригинальных тем. Кроме этого, можно настроить десяток других параметров: ориентацию слов, форму, шрифт.
Единственный, но значимый недостаток – сервис не работает в Google Chrome, так как в нем отсутствует поддержка технологии Silverlight.
Wordart
Еще один простой и удобный онлайн-конструктор облака слов, позволяющий создавать их в самых неожиданных формах и сочетаниях:
Облака тегов, созданные с помощью Wordart
Чтобы создать собственное облако слов, выбираем пункт Create now и сразу попадаем в интерфейс конструктора:
Как видим, интерфейс здесь – один из самых сложных, даже по сравнению с ранее рассмотренными нами сервисами. Давайте разберемся с разделами и настройками подробнее.
Самый интересный – Shapes: здесь мы можем выбрать форму конечного облака (а еще добавить свое изображение и сделать из него облако). Здесь очень разнообразная коллекция форм облаков. Например, вот формы по рождественской тематике:
Кстати, Wordart, на моей памяти, – единственный сервис, позволяющий создать полноценное анимированное облако меток.
В Layout можно кастомизировать ориентацию (угол) слов:
В Words вносим новые слова, их можно указать не только вручную, но и импортировать из уже существующего документа:
По-настоящему здорово, что для всех элементов можно назначить различный размер (индивидуальный), а также изменить цветовое сочетание.
Завершив формирование облака при помощи настроек, можно выбирать пункт Visualize.
Кстати, здесь также есть магазин, где можно заказать, например, футболку или постер с вашим облаком. К сожалению, кириллицу сервис пока еще не поддерживает, что значительно ограничивает использование инструмента для русскоязычных пользователей.
Word it out
Самый «спартанский» сервис. Здесь нет сотен шаблонов, огромного количества настроек и других плюшек. Зато сервис легкий и ничем не перегружен. Он позволит создать самое простое облако тегов, небольшого размера, но с весьма симпатичным шрифтом. Достаточно ввести все слова в поле Original Text:
Настройки есть, но их немного. Можно указать минимальное количество букв в слове, фильтрованные слова и символы пунктуации, которые не будут использоваться в облаке:
Можно поменять: цвет фона, цвет слов. Есть поддержка кириллицы.
Доступны следующие шрифты:
Так выглядят остальные настройки:
После ввода всех ключевых слов выбираем пункт Generate и наблюдаем результат:
Послесловие
Облако меток как элемент сайта многие считают весьма устаревшим. Обычно говорят, что его функционал полностью заменил поиск по сайту. Но по-моему, это абсолютно не так. Почему? Допустим, вы видите перед собой поисковую строку на каком-либо тематическом ресурсе. Мотивирует ли она вас ввести какую-либо фразу и что-то поискать? Я очень сильно в этом сомневаюсь. Другое дело – облако тегов. Оно притягивает наш взгляд, заставляет изучать содержимое и на каком-то неведомом уровне «заставляет» кликнуть по интересующему слову. Немаловажно, что для поиска ничего не нужно вводить – все и так как на ладони.
Таким образом, облако тегов не является заменой поисковой строки на сайте. Это совсем другой инструмент, с другим функционалом, который при грамотном использовании улучшит поведенческие факторы вашей аудитории. Как минимум, увидев красивое облако меток, посетитель задержится на странице, чтобы изучить его подробнее. А это уже прямое влияние на метрику «Время на сайте».
В Google и «Яндексе», соцсетях, рассылках, на видеоплатформах, у блогеров














































