詞雲python
㈠ python中對已經排好序的詞語怎麼做詞雲
期末復習比較忙過段時間來專門寫scrapy框架使用,今天介紹如何用python生成詞雲,雖然網上有很多詞雲生成工具,不過自己用python來寫是不是更有成就感。
今天要生成的是勵志歌曲的詞雲,網路文庫裡面找了20來首,如《倔強》,海闊天空是,什麼的大家熟悉的。
所要用到的python庫有 jieba(一個中文分詞庫)、wordcould 、matplotlib、PIL、numpy。
首先我們要做的是讀取歌詞。我將歌詞存在了文件目錄下勵志歌曲文本中。
現在來讀取他
加入#encoding=gbk是為了防止後面操作報錯SyntaxError: Non-UTF-8 code starting with 'xc0'
然後我們用jieba分詞來對歌曲做分詞提取出詞頻高的詞
123456import jieba.analyseresult=jieba.analyse.textrank(lyric,topK=50,withWeight=True)keywords = dict()for i in result:keywords[i[0]]=i[1]print(keywords)得到結果:
12345678910111213from PIL import Image,ImageSequenceimport numpy as npimport matplotlib.pyplot as pltfrom wordcloud import WordCloud,ImageColorGeneratorimage= Image.open('./tim.jpg')graph = np.array(image)wc = WordCloud(font_path='./fonts/simhei.ttf',background_color='White',max_words=50,mask=graph)wc.generate_from_frequencies(keywords)image_color = ImageColorGenerator(graph)plt.imshow(wc)plt.imshow(wc.recolor(color_func=image_color))plt.axis("off")plt.show()保存生成圖片
1wc.to_file('dream.png')完整代碼:
以上這篇python生成詞雲的實現方法(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
㈡ 為什麼用python畫的詞雲很模糊
cloud = WordCloud(
width=1000,height=600,
min_font_size=20,
max_words=200,
max_font_size=80
)
繪制詞雲的時候把圖片的寬和高加大一點,然後字體也加大一點
㈢ python生成詞雲,要求頻率越小生成的字詞越大,老師的要求,請各位大佬解答,感謝,急急急!!!
按照常理可以實現,但是python是智能的,不能安裝常理算。關注點有點偏,老師不是刁難學生,而是幫助學生進步。你可以去問問老師具體的思路,祝你取得更大的進步。
㈣ 如何用python做詞雲pdf
,決定用python繪制詞雲,主要用到的是wordcloud庫,安裝只需要pip isntall wordcloud就行,
數據用的是酒店評論的數據,代碼如下:
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import pickle
from wordcloud import WordCloud,STOPWORDS,ImageColorGenerator
import jieba
# import codecs
# fin = codecs.open('HotelComments.txt',mode = 'r', encoding = 'utf-8')
# print fin.read()
# 第一次運行程序時將分好的詞存入文件
# text = ''
# with open('HotelComments.txt') as fin:
# for line in fin.readlines():
# line = line.strip('\n')
# text += ' '.join(jieba.cut(line))
# text += ' '
# fout = open('text.txt','wb')
# pickle.mp(text,fout)
# fout.close()
# 直接從文件讀取數據
fr = open('text.txt','rb')
text = pickle.load(fr)
backgroud_Image = plt.imread('girl.jpg')
wc = WordCloud( background_color = 'white', # 設置背景顏色
mask = backgroud_Image, # 設置背景圖片
max_words = 2000, # 設置最大現實的字數
stopwords = STOPWORDS, # 設置停用詞
font_path = 'C:/Users/Windows/fonts/msyh.ttf',# 設置字體格式,如不設置顯示不了中文
max_font_size = 50, # 設置字體最大值
random_state = 30, # 設置有多少種隨機生成狀態,即有多少種配色方案
)
wc.generate(text)
image_colors = ImageColorGenerator(backgroud_Image)
wc.recolor(color_func = image_colors)
plt.imshow(wc)
plt.axis('off')
plt.show()
㈤ 如何用Python做詞雲
推薦使用jieba模塊來實現分詞,WordCloud來繪制詞雲。
#-*-coding:utf-8-*-
fromPILimportImage
importnumpyasnp
importmatplotlib.pyplotasplt
importjieba
fromwordcloudimportWordCloud,STOPWORDS
#Readthewholetext.
text=open('內容.txt','r').read()
text="".join(jieba.cut(text,cut_all=False))
#愛心.png表示你繪圖模板,就是最後圖片的形狀
alice_mask=np.array(Image.open('愛心.png'))
#中文需要設置字體,songti.ttf代表宋體
wc=WordCloud(font_path='songti.ttf',background_color="white",mask=alice_mask,
max_words=2000)
#generatewordcloud
wc.generate(text)
#storetofile
wc.to_file('result.png')
#show
plt.imshow(wc)
plt.axis("off")
#plt.figure()
#plt.imshow(alice_mask,cmap=plt.cm.gray)
#plt.axis("off")
plt.show()
㈥ Python3.5.3怎麼裝詞雲
word cloud初識:
㈦ 詞雲怎麼調用生成 python
把兩個腳本filea.py 和 fileb.py 放在同一個目錄下,然後在filea.py的開頭寫: import fileb 然後就可以使用fileb.py中定義的函數了
㈧ 如何使用python來實現個性化詞雲的示例代碼分享
#coding=utf-8
#usingpython27
fromosimportpath
fromPILimportImage
importnumpyasnp
importmatplotlib.pyplotasplt
fromwordcloudimportWordCloud,STOPWORDS,ImageColorGenerator
#d=path.dirname(__file__)
#Readthewholetext.
text=open(r'C:StudyPythonwordcloud_alice.txt').read()
#readthemask/colorimagetakenfrom
#http://jirkavinse.deviantart.com/art/quot-Real-Life-quot-Alice-282261010
alice_coloring=np.array(Image.open(r'C:StudyPythonwordcloud_alice_color.png'))
stopwords=set(STOPWORDS)
stopwords.add("said")
wc=WordCloud(background_color="white",max_words=2000,mask=alice_coloring,
stopwords=stopwords,max_font_size=40,random_state=42)
#generatewordcloud
wc.generate(text)
#createcoloringfromimage
image_colors=ImageColorGenerator(alice_coloring)
#show
plt.imshow(wc,interpolation="bilinear")
plt.axis("off")
plt.figure()
#recolorwordcloudandshow
#wecouldalsogivecolor_func=image_
plt.imshow(wc.recolor(color_func=image_colors),interpolation="bilinear")
plt.axis("off")
plt.figure()
plt.imshow(alice_coloring,cmap=plt.cm.gray,interpolation="bilinear")
plt.axis("off")
plt.show()
執行這個代碼還需要兩個文件, 網路知道不能上傳, 可以用扣或者私我傳給你
運行結果:
㈨ python如何自定義詞雲
推薦使用jieba模塊來實現分詞,WordCloud來繪制詞雲。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# -*- coding: utf-8 -*-
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
import jieba
from wordcloud import WordCloud, STOPWORDS
# Read the whole text.
text = open('內容.txt', 'r').read()
text = " ".join(jieba.cut(text, cut_all=False))
# 愛心.png表示你繪圖模板,就是最後圖片的形狀
alice_mask = np.array(Image.open('愛心.png'))
# 中文需要設置字體,songti.ttf代表宋體
wc = WordCloud(font_path='songti.ttf', background_color="white", mask=alice_mask,
max_words=2000)
# generate word cloud
wc.generate(text)
# store to file
wc.to_file('result.png')
# show
plt.imshow(wc)
plt.axis("off")
# plt.figure()
# plt.imshow(alice_mask, cmap=plt.cm.gray)
# plt.axis("off")
plt.show()
㈩ python3.7生成的詞雲,顯示成功,卻沒有圖片
根據你的代碼,你生成的詞雲圖片文件名字叫做aaaaa.png,打開你存儲python文件的文件夾,在那裡面找到aaaaa.png這個圖片文件,打開就是生成的詞雲了