WordCloudのマスクの使い方(マスクを使ってWordCloudをお洒落に表示)

WordCloudというテキストの傾向を可視化できるツールがあります。

入力されるテキストの中から、単語の出現頻度等を調べ、頻度に応じて文字の大きさや色などを変更して、一枚の画像にして表示することができます。

以前、自分で用意したテキストファイルからWordCloudを使ってテキストを分析してみる方法について紹介を行いました。

WordCloudというテキストの傾向を可視化できるツールがあります。 入力されるテキストの中から、単語の出現頻度等を調べ、頻度に応...
しかしながら、デフォルトだとWordCloudの出力結果は長方形の領域に文字を詰め込んだものになります。

しかし、より洗練されたデザインを目指す上では、さらに工夫が必要です。今回は、マスクを使うことでWordCloudの出力結果を任意の形状にしてみましょう。

例えば、以下のような出力結果を得ることができます。

WordCloudでマスクを使って任意の形状のWordCloudを生成するプログラム(Python)

テストデータとして、前回同様、今回はコンピュータビジョンのトップカンファレンスであるCVPR2021のAccepted paperのリストを入力してみました。以下にテキストデータにしたものを用意したので、テストしたい方は試してみてください。

さらに、今回は形状を決める「マスク」を事前に用意する必要があります。マスクは「白:表示されない」「黒:表示される」を表します。

簡単なものであればペイントツールなどでも自作できますね。今回は以下の画像を使いたいと思います。

早速、ソースコードを以下に掲載します。

実行すると2種類のWordCloudの画像が出力されます。

1枚目は上記のソースコードの10行目で「mask=mask_array」を指定したものになります。mask_arrayにハート型の画像が入っているので、ハートの黒の部分にのみ文字が表示されます。

2枚目は以下の通り枠線が入ります。ソースコードの13行目が対応箇所で「mask=mask_array, contour_width=5, contour_color=”steelblue”」のようにcontour_widthで枠線の太さを、contour_colorで枠線の色を指定することができます。

まとめ

本日はWordCloudのマスクを用いて、出力結果を任意形状にする方法を紹介しました。これにより、出力結果を洗練することができます。

スポンサーリンク

シェアする

フォローする