word_cloud README

The project's README from github.com/amueller/word_cloud. As one markdown file: README.md.

licence DOI

word_cloud

A little word cloud generator in Python. Read more about it on the blog post or the website.

The code is tested against Python 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13.

Installation

If you are using pip:

pip install wordcloud

If you are using conda, you can install from the conda-forge channel:

conda install -c conda-forge wordcloud

Installation notes

wordcloud depends on numpy, pillow, and matplotlib.

If there are no wheels available for your version of python, installing the package requires having a C compiler set up. Before installing a compiler, report an issue describing the version of python and operating system being used.

Examples

Check out examples/simple.py for a short intro. A sample output is:

Constitution

Or run examples/masked.py to see more options. A sample output is:

Alice in Wonderland

Getting fancy with some colors: Parrot with rainbow colors

Generating wordclouds for Arabic:

Arabic wordlcloud

Command-line usage

The wordcloud_cli tool can be used to generate word clouds directly from the command-line:

$ wordcloud_cli --text mytext.txt --imagefile wordcloud.png

If you're dealing with PDF files, then pdftotext, included by default with many Linux distribution, comes in handy:

$ pdftotext mydocument.pdf - | wordcloud_cli --imagefile wordcloud.png

In the previous example, the - argument orders pdftotext to write the resulting text to stdout, which is then piped to the stdin of wordcloud_cli.py.

Use wordcloud_cli --help so see all available options.

Licensing

The wordcloud library is MIT licenced, but contains DroidSansMono.ttf, a true type font by Google, that is apache licensed. The font is by no means integral, and any other font can be used by setting the font_path variable when creating a WordCloud object.

word_cloud (amueller/word_cloud)

Searching Database…

Что это такое?word_cloud — это небольшой генератор облаков слов на Python: он превращает текст в картинку, где размер каждого слова зависит от того, как часто оно встречается. Это библиотека для Python, а в комплекте идёт ещё небольшая утилита командной строки под названием wordcloudcli.
Это библиотека или утилита командной строки?И то, и другое. В коде на Python вы создаёте объект WordCloud и отрисовываете его через matplotlib; тот же пакет ставит и wordcloudcli, чтобы можно было получить облако прямо из терминала.
Как установить его в своё окружение?Через pip: pip install wordcloud, а если вы пользуетесь conda, поставьте из канала conda-forge: conda install -c conda-forge wordcloud.
Что он тянет за собой в качестве зависимостей?Он зависит от numpy, pillow и matplotlib — pip и conda подхватят их автоматически при установке.
Он встанет без проблем на любой системе?В основном да: код проверен на Python 3.7–3.13. Нюанс в том, что если для вашей версии Python и операционной системы нет готовой сборки (wheel), для установки понадобится заранее настроенный C-компилятор.
Лицензия безопасна для моего проекта?Сама библиотека распространяется по лицензии MIT, но в комплект входит шрифт DroidSansMono.ttf от Google, который лицензирован под Apache. Шрифт не является обязательным — задайте переменную fontpath при создании объекта WordCloud, чтобы подставить любой другой.
Можно построить облако из текстового файла без написания кода?Да — в пакет входит wordcloudcli. Запустите wordcloudcli --text mytext.txt --imagefile wordcloud.png, а wordcloudcli --help покажет все доступные опции. Для PDF прогоните текст через pdftotext: pdftotext mydocument.pdf - | wordcloudcli --imagefile wordcloud.png.
Как ещё может выглядеть результат, кроме простого прямоугольника со словами?В примерах показано несколько стилей: simple.py — короткое введение, masked.py подгоняет облако под форму маски, есть вариант с затейливой раскраской и пример генерации облаков для арабского языка.
Можно использовать свой шрифт?Да. По умолчанию идёт встроенный шрифт DroidSansMono.ttf от Google, но он вовсе не обязателен — задайте переменную fontpath при создании объекта WordCloud, чтобы использовать любой другой TrueType-шрифт.
Creator
amueller
Size
117 MB
Stars
10.5K
Age
13y
Commits · 90 Days