WordCloud.jl - 用julia生成漂亮的词云

大家好,我刚刚发布了自己的第一个julia包——WordCloud.jlWordCloud.jl是一个纯julia实现的词云生成工具。WordCloud.jl具有灵活、高效、准确的特点,可以快速生成各种风格的定制化词云。而且WordCloud.jl没用采用常见的贪心策略(一词一放,既放不动),这样不需要为了放入剩余空白而缩放单词,从而避免了文字大小的失真。
可以使用命令import Pkg; Pkg.add("WordCloud")以安装WordCloud.jl。在using WordCloud后,使用runexample or showexample可以运行或查看一些例子。
项目的github地址是:GitHub - guo-yong-zhi/WordCloud.jl: word cloud generator in julia
抄过来一些例子:

Alice蒙版

using WordCloud
wc = wordcloud(
    process(open(pkgdir(WordCloud)*"/res/alice.txt"), stopwords=WordCloud.stopwords_en ∪ ["said"]), 
    mask = loadmask(pkgdir(WordCloud)*"/res/alice_mask.png", color="#faeef8"),
    colors = :Set1_5,
    angles = (0, 90),
    fillingrate = 0.7) |> generate!
paint(wc, "alice.png", ratio=0.5, background=outline(wc.mask, color="purple", linewidth=1))

image

故乡动图

using CSV
using DataFrames
using WordCloud

df = CSV.File(pkgdir(WordCloud)*"/res/guxiang_frequency.txt", header=false)|> DataFrame;
words = df[!, "Column2"]
weights = df[!, "Column3"]

wc = wordcloud(words, weights, fillingrate=0.8)
gifdirectory = "guxiang_animation"
generate_animation!(wc, 100, outputdir=gifdirectory)

注意目前process函数并不支持中文文本分词,所以中文词云需要手动传入wordsweights列表。
好吧,新用户不让传两张图。希望大家多多鼓励,提出宝贵意见~撒花

7 个赞

这也太酷炫了吧!

路过膜拜大佬啊啊

围观大佬 :100:

不敢当啊 :joy:,发的第一个包,有很多不成熟的地方

慢慢的就会成熟了的