以前の質問で、文中の連続する 2 つの単語の頻度を数える方法についてコミュニティに尋ねたところ、すばらしい回答が得られました。今、パッケージ pytagcloud を使用して、結果からワード クラウドを構築しようとしています。
私が抱えている問題は、作成された写真が混み合っていて、言葉が滑らかになっていることです. 単語を区切って読みやすくする機能があるかどうか、またはPythonでそれを行う別の方法があるかどうか、考えてください。
ありがとう!
私のコードは以下です。これはテストに使用したテキストのリンクです。使用する単語の組み合わせの数を減らしてみましたが、画像内のテキストの混雑度は変わりませんでした。
また、「レイアウト」と「サイズ」と「fontname='Lobster' と fontzoom=1」で遊ぶような機能もいくつか追加しましたが、どれも単語が混雑していないクリーンなワード クラウド画像である最適な結果をもたらしません。
import operator
import urllib2
from roundup.backends.indexer_common import STOPWORDS
import requests, collections, bs4
Data = "TEXT FROM The link above- TEXT file"
two_words = [' '.join(ws) for ws in zip(Data, Data[1:])]
wordscount = {w:f for w, f in Counter(two_words).most_common() if f > 12}
sorted_wordscount = sorted(wordscount.iteritems(), key=operator.itemgetter(1))
print sorted_wordscount;
from pytagcloud import create_tag_image, create_html_data, make_tags, LAYOUT_HORIZONTAL, LAYOUTS, LAYOUT_MIX, LAYOUT_VERTICAL, LAYOUT_MOST_HORIZONTAL, LAYOUT_MOST_VERTICAL
from pytagcloud.colors import COLOR_SCHEMES
from pytagcloud.lang.counter import get_tag_counts
create_tag_image(make_tags(sorted_wordscount), 'filename.png', size=(1300,1150), background=(0, 0, 0, 255), layout=LAYOUT_MIX, fontname='Molengo', rectangular=True)