/word_cloud

A little word cloud generator in Python

Primary LanguagePythonMIT LicenseMIT

Build Status 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 Python 2, but Python 3 compatible. This fork is tailored for use with the SWE GetSET workshops.

Installation

Fast install:

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 requirements:

sudo pip install -r requirements.txt

Install the package:

python setup.py install

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.

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

Used in

Reddit Cloud

Reddit Cloud is a Reddit bot which generates word clouds for comments in submissions and user histories. You can see it being operated on /u/WordCloudBot2 (top posting).

A Reddit Cloud sample

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.

Chat Stats Sample

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.

Society of Women Engineers GetSET(Science, Engineering & Technology) Workshop

The GetSET program is an award winning outreach program of the Society of Women Engineers Santa Clara Valley Section (SWE-SCV) dedicated to encouraging, motivating and exposing young ladies from underrepresented groups to STEM careers. After a crash course in Python, the girls learn to install and use libraries such as this. The lesson plan and more examples can be seen here.

[other]

Send a pull request to add yours here.

Issues

Using Pillow instead of PIL might might get you the TypeError: 'int' object is not iterable problem also showcased on the blog.

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.