2017-04-02 1 views
1

사전에서 워드 클 라우드를 만들고 있습니다. 워드 클 라우드에 대해서는 github 사용자 amueller가 만든 라이브러리 wordcloud를 사용합니다. 파이썬이 워드 클 라우드를 출력하지 않습니다.

내 코드입니다 :

from wordcloud import WordCloud, STOPWORDS 
import matplotlib.pyplot as plt 

    MyData= {u'arbeid': 0.0006715695865686539, 
     u'banen': 0.00066821988636323406, 
     u'begrotingsherstel': 0.00071106447864468028, 
     u'belastingplan': 0.00064287666559415511, 
     u'bestuursakkoord': 0.00085938678272561703, 
     u'duurzame': 0.00086622249359887991, 
     u'energie': 0.00071735256545447078, 
     u'energievoorziening': 0.00091959448177479836, 
     u'europa': 0.00077342364155819174, 
     u'inkomens': 0.00086651160197001511, 
     u'kabinet': 0.0012281373248267241, 
     u'pakket': 0.00078934462283374919, 
     u'premier': 0.00098440752486735842, 
     u'slob': 0.0010329596055417033, 
     u'verdaas': 0.00072183114176594104} 

    type(test) 

    WordCloud().generate_from_frequencies(MyData) 
    plt.show() 

내가보다 plt.show()를 사용하지 않는 경우 I 만 출력으로 다음과 같은 얻을 수 있다는 것입니다 가지고있는 문제 :

<wordcloud.wordcloud.WordCloud at 0x350700f0> 

내가 제대로 plt.show()을 기억하는 경우를 객체를 그려야하지만 그렇지 않다!

답변

3

WordCloud().generate_from_frequencies(MyData)의 결과를 변수에 저장 한 다음 matplotlib.pyplot.imshow을 사용하여 그래프를 그려야합니다.

from wordcloud import WordCloud, STOPWORDS 
import matplotlib.pyplot as plt 

# test data 
MyData= {u'arbeid': 0.0006715695865686539, 
     u'banen': 0.00066821988636323406, 
     u'begrotingsherstel': 0.00071106447864468028, 
     u'belastingplan': 0.00064287666559415511, 
     u'bestuursakkoord': 0.00085938678272561703, 
     u'duurzame': 0.00086622249359887991, 
     u'energie': 0.00071735256545447078, 
     u'energievoorziening': 0.00091959448177479836, 
     u'europa': 0.00077342364155819174, 
     u'inkomens': 0.00086651160197001511, 
     u'kabinet': 0.0012281373248267241, 
     u'pakket': 0.00078934462283374919, 
     u'premier': 0.00098440752486735842, 
     u'slob': 0.0010329596055417033, 
     u'verdaas': 0.00072183114176594104} 
# generate wordcloud 
wcloud = WordCloud().generate_from_frequencies(MyData) 

# make figure to plot 
plt.figure() 
# plot words 
plt.imshow(wcloud, interpolation="bilinear") 
# remove axes 
plt.axis("off") 
# show the result 
plt.show() 

enter image description here

관련 문제