0

テキストのさまざまな品詞のワード クラウドを生成したいと考えています。私が直面している問題は、それぞれのパラメーターを自分で調整したくないということです。さらに、これを多数のドキュメントで実行しているため、それぞれについて実行するのは非常に面倒です。自動化されたアプローチはありますか?

    max_w=max(len(verbs),len(adjectives),len(adverbs),len(nouns))
    word_cloud_generator("verbs",verbs,description,len(verbs)/max_w)
    word_cloud_generator("adjectives",adjectives,description,len(adjectives)/max_w)
    word_cloud_generator("adverbs",adverbs,description,len(adverbs)/max_w)
    word_cloud_generator("nouns",nouns,description,len(nouns)/max_w)

    def word_cloud_generator(part,data,description,scale):
        TEXT= " ".join(data)
        xlim=600*(scale)
        ylim=600*(scale)
        max_size= 200*(scale)
        min_size=2*(scale)
        threshold=4*(scale)
        tags = make_tags(get_tag_counts(TEXT), maxsize=max_size,minsize=min_size)
        tags=[a for a in tags if a['size'] > threshold]
        filename=description+ "_"+part+'.png'
        create_tag_image(tags,filename , size=(xlim, ylim), fontname='Molengo', \
            background=(0,0,0),rectangular=True)

助けてください。

編集: 上記のコードは、テキスト内の単語数に応じてワード クラウド パラメーターを選択しようとします。しかし、私が得た結果は十分に効率的ではありません。効率とは、合理的な画像サイズの整然とした重複しないワード クラウドを意味します。

4

0 に答える 0