pip install wordcloud
If you are using conda, it might be even easier to use anaconda cloud:
conda install -c https://conda.anaconda.org/amueller wordcloud
For a manual install get this package:
wget https://github.com/amueller/word_cloud/archive/master.zip unzip master.zip rm master.zip cd word_cloud-master
Install the package:
python setup.py install
If you're having trouble with pip installation on windows, you can find a .whl file at:
Note that if you are not on Ubuntu, you need to pass a
font_path to the WordCloud object (docs) to point to
some existing font.
Check out examples/simple.py for a short intro. A sample output is:
Or run examples/masked.py to see more options. A sample output is:
wordcloud_cli.py tool can be used to generate word clouds directly from the command-line:
$ wordcloud_cli.py --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.py --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 --help so see all available options.
Chat Stats (Twitch.tv)
Chat Stats is a visualization program for Twitch streams, which generates word clouds for comments made by Twitch users in the chat. It also creates various charts and graphs pertaining to concurrent viewership and chat rate over time.
Twitter Word Cloud Bot
Twitter Word Cloud Bot is a twitter bot which generates word clouds for twitter users when it is mentioned with a particular hashtag. Here you can see it in action, while here you can see all the word clouds generated so far.
Send a pull request to add yours here.
Using Pillow instead of PIL might might get you the
TypeError: 'int' object is not iterable problem also showcased on the blog.
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