需要處理的文字(此處以英文為例,因為我覺得這個英文好看)
涉及的txt檔案和py檔案
程式執行ing~
最終的效果圖
#中英文詞云
print("執行前請確保已經安裝 jieba庫!")
import jieba
import wordcloud
#選擇處理
defbgsetting
(bg_flag):
if bg_flag=="1":
bgcolor="white"
elif bg_flag=="2":
bgcolor="black"
return bgcolor
defstopwordssetting
(ex_flag):
if ex_flag=="1":
print("請在此程式的源資料夾中建立:exclude.txt檔案,並在該文字檔案中輸入需要排除的詞彙,一行乙個詞彙!")
ex_f=open("exclude.txt","r")
ex_t=ex_f.read()
stopwords=ex_t.split()
ex_f.close()
else:
stopwords=
return stopwords
defaddwordsssetting
(add_flag):
if add_flag=="1":
add_f=open("add.txt","r")
add_t=add_f.read()
add_f.close()
addwords=add_t.split()
else:
addwords=
return addwords
#文件讀寫與處理
defreadfile
(): f = open("data.txt", "r")
t = f.read()
f.close()
return t
defchinesewc
(t):
add_flag=input("需要新增詞彙請扣1,不需要新增詞彙請按任意鍵繼續:")
addwords=addwordsssetting(add_flag)
if addwords !=:
for word in addwords:
jieba.add_word(word)
words = jieba.lcut(t)
txt = " ".join(words)
font="msyh.ttc"
return txt,font
defengwc
(t):
txt=t.replace("\n"," ")
return txt
#輸入def
getinputs
(): print("請將所需轉換的txt檔案儲存於此程式的源資料夾中,並且命名為:data.txt!")
ex_flag=input("需要排除詞彙請扣1,不需要排除詞彙請按任意鍵繼續:")
while bg_flag!="1"
and bg_flag!="2":
bg_flag=input("需要生成白底請扣1,需要生成黑底請扣2,其他輸入為無效輸入!")
language_flag=input("中文詞云請扣1,英文詞云請扣2:")
while language_flag!="1"
and language_flag!="2":
language_flag=input("中文詞云請扣1,英文詞云請扣2,其他輸入為無效輸入!")
bgcolor=bgsetting(bg_flag)
stopwords=stopwordssetting(ex_flag)
return w,h,maxwords,stopwords,bgcolor,language_flag
#輸出def
getimagec
(w,h,bgcolor,font,maxwords,stopwords,txt):
wc= wordcloud.wordcloud( \
width =w, height =h,\
background_color = bgcolor,\
font_path =font,\
max_words=maxwords,\
stopwords=stopwords)
wc.generate(txt)
wc.to_file("result.png")
defgetimagee
(w,h,bgcolor,maxwords,stopwords,txt):
wc= wordcloud.wordcloud( \
width =w, height =h,\
background_color = bgcolor,\
max_words=maxwords,\
stopwords=stopwords)
wc.generate(txt)
wc.to_file("result.png")
#主函式
defmain
(): w,h,maxwords,stopwords,bgcolor,language_flag=getinputs()
t=readfile()
if language_flag=="1":
txt,font=chinesewc(t)
getimagec(w,h,bgcolor,font,maxwords,stopwords,txt)
print("sucessfully")
else:
txt=engwc(t)
getimagee(w,h,bgcolor,maxwords,stopwords,txt)
print("sucessfully")
try:
main()
except:
print("tat")
python WordCloud詞云安裝
解決辦法 先安裝wrapt 1.10.11 cp36 cp36m win amd64.whl 再安裝wordcloud 1.3.2 cp36 cp36m win amd64.whl 成功驗證 發現成功匯入wordcloud的包 測試 fromwordcloudimportwordcloud f op...
Python wordcloud庫的使用
1 wordcloud庫基本介紹 1 wordcloud庫概述 wordcloud是優秀的詞云展示第三方庫 詞云以詞語為基本單位,更加直觀和藝術的展示文字 2 wordcloud庫的安裝 cmd命令列 pip install wordcloud 2 wordcloud庫使用說明 1 wordclou...
Python wordcloud庫學習小結
w wordcloud.wordcloud 方法描述例子 w.generate txt 向wordcloud物件w中載入文字txt w.generate python and wordcloud w.to file filename 將詞云輸出為影象檔案,png或.jpg格式 w.to file o...