1. ホーム
  2. layout

[解決済み】Wordleのようなワードクラウドを実装するためのアルゴリズム

2022-04-22 03:20:24

質問

文脈

ご質問

  • Wordleと同じようなアルゴリズムがありますか?
  • ない場合、同じような出力が得られる代用品は何か?

質問の理由

  • ちょっと不思議
  • 学びたい

解決方法は?

私はWordleの作者です。ここでは、Wordleの実際の仕組みを説明します。

単語を数え、つまらない単語は捨て、その数で降順に並べ替えます。各単語にカウントに比例したフォントサイズを割り当てる。Java2D APIを使って、各単語に対応するJava2D Shapeを生成する。

各単語は、垂直方向の中央のランダムなxの位置のような、どこかに存在することを望んでいます"。頻度の高い順に、各単語についてこれを行う。

place the word where it wants to be
while it intersects any of the previously placed words
    move it one step along an ever-increasing spiral

これで終わりです。その ハード そのために、ラストヒットキャッシング、階層型バウンディングボックス、4分木空間インデックスを使用しています(これらはすべて、熱心にググればもっとわかることです)。

編集:Reto Aebersoldが指摘したように、これと同じ領域をカバーする本の章があり、自由に利用できます。 美しい可視化、第3章:Wordle