用了一天時間終於做好第一張算是滿意的詞云了。網上的教程看了不少,還是有不少坑的。
下面貼上我用的**:
__author__ = 'solarzhou'
#!/usr/bin/env python
#-*- coding: utf-8 -*-
from os import path
from wordcloud import wordcloud, stopwords
import numpy as np
from pil import image
import matplotlib.pyplot as plt
import random
import os
defgrey_color_func
(word, font_size, position, orientation, random_stata=none, **kwargs):
return
'hsl(0, 0%%, %d%%)' % random.randint(60, 100)
#當前資料夾所在目錄
d = path.dirname(__file__)
#讀取背景
#讀取乙個txt檔案
text = open(u'file\honor2.txt').read()
#停用詞詞庫
stopwords = set(stopwords)
stopwords.add("int")
stopwords.add("ext")
#設定詞云屬性,其中第乙個引數非常重要,若沒有正確設定,
#將不能解析中文,出現亂碼
wc = wordcloud(font_path='./fonts/simhei.ttf', max_words=2000, mask=mask,
stopwords=stopwords, margin=10,
random_state=1).generate(text)
default_colors = wc.to_array()
plt.title("custom colors")
plt.imshow(wc.recolor(color_func=grey_color_func, random_state=3))
wc.to_file('001.png')
plt.axis("off")
#顯示生成的ciyun
plt.figure()
plt.imshow(default_colors)
plt.axis("off")
plt.show()
**不多,也容易懂,不過在這之前需要安裝wordcloud,numpy,pil和matplotlib包。
讀取中文文件還需要額外處理。
執行之後生成效果圖:
用python製作詞云
注意 pil安裝需要使用 pip install pillow 命令1.首先需要把文字中的詞語先分割出來 使用jieba.cut 方法可以將一段文字中的中文詞條切割2.選擇一張作為詞云的背景 要求輪廓清晰 使用numpy.array 方法把轉化成陣列形式,為最終生成詞云做鋪墊3.將統計好的詞按照頻率...
雲第一次作業
root 該目錄為系統管理員,也稱作超級許可權者的使用者主目錄。home 使用者的主目錄,在linux中,每個使用者都有乙個自己的目錄,一般該目錄名是以使用者的賬號命名的。etc 這個目錄用來存放所有的系統管理所需要的配置檔案和子目錄。bin 這個目錄存放著最經常使用的命令。這裡的 bin 和 sb...
第一次用剪枝
hdoj 1010 include include using namespace std int n,m,t,sx,sy,ex,ey char maze 8 8 int dir 4 2 bool escape false int least distance int x,int y void df...