Go で Wordcloudを使う方法
ここを参考にしてみたんですけど、
>>Goで青空文庫の小説からWordCloud作ってみた - Qiita
まぁ、上手くいきませんw
初心者には難しことこの上ないww
とりあえずライブラリを go get しちゃいます。
>>GitHub - psykhi/wordclouds: Wordclouds in go
ここまでは特に問題ない。
とりあえずサラサラとコードを書いていったら
上手く実行できません・・・
まず、フォントを指定するんですけど、どうもこのライブラリは
ttfしか対応してないようです。
Macを使ってたので適当なttcを指定していたら、例外エラーになって
ひとしきり悩みましたw
あと、デフォルトでColorsを指定してあげないと、画像は生成されるけど、
BackgroundColorで指定した色の画像だけが生成されるw
文字色をしていしない場合は黒色で生成されると思ってたから、これも悩んだ!
エラーになれば初心者でも分かるんだけどな・・・
だからとりあえず文字色作って ↓↓
// なぜか文字だけ表示されない!!!
// 意味がわからないぞー
// ↓ 結果、デフォルトのフォントカラーを指定しないとダメみたい
var DefaultColors = color.RGBA{
{0x1b, 0x1b, 0x1b, 0xff},
{0x48, 0x48, 0x4B, 0xff},
{0x59, 0x3a, 0xee, 0xff},
{0x65, 0xCD, 0xFA, 0xff},
{0x70, 0xD6, 0xBF, 0xff},
}
colors := make(color.Color, 0)
for _, c := range DefaultColors {
colors = append(colors, c)
}
こんな感じに設定して ↓↓
w := wordclouds.NewWordcloud(
wordlist,
wordclouds.Height(2048),
wordclouds.Width(2048),
wordclouds.RandomPlacement(false),
wordclouds.FontMaxSize(800),
wordclouds.FontMinSize(10),
wordclouds.FontFile("./ipaexg.ttf"),
wordclouds.Colors(colors),
wordclouds.BackgroundColor(color.RGBA{0, 0, 0, 255}),
)
生成されたのがコレ!! ↓↓
羅生門を解析した結果だけど、意外なほどカッコよくないですか?