Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

สร้าง Word Cloud โดยใช้ Python


ในปัญหานี้มีไฟล์ที่มีข้อความอยู่บ้าง เราต้องสร้าง Word Clouds จากข้อความเหล่านั้นและภาพกำบังหนึ่งภาพ โปรแกรมจะเก็บภาพ word cloud เป็น png รูปแบบ

เพื่อนำปัญหานี้ไปใช้ เราจำเป็นต้องใช้ไลบรารี่ของ python ไลบรารีต่างๆ ได้แก่ matplotlib, wordcloud, numpy, tkinter และ PIL

ในการติดตั้งไลบรารี่เหล่านี้ เราต้องปฏิบัติตามคำสั่งเหล่านี้ -

ตั้งค่าไลบรารี

$ sudo pip3 install matplotlib
$ sudo pip3 install wordcloud
$ sudo apt-get install python3-tk

หลังจากเพิ่มไลบรารีเหล่านี้แล้ว เราสามารถเขียนโค้ดหลามเพื่อทำงาน

อัลกอริทึม

Step 1: Read the data from the file and store it into ‘dataset’. 
Step 2: Create pixel array from the mask image. 
Step 3: Create the word cloud from the dataset. Set the background color, mask, and stop-words. 
Step 4: Store the final image into the disk. 

อินพุต:ไฟล์ sampleWords.txt

Python เป็นภาษาสคริปต์ระดับสูง ตีความ โต้ตอบ และเชิงวัตถุ Python ถูกออกแบบมาให้อ่านง่าย ใช้คำหลักภาษาอังกฤษบ่อยครั้งในขณะที่ภาษาอื่นใช้เครื่องหมายวรรคตอน และมีการสร้างประโยคน้อยกว่าภาษาอื่น

Python ได้รับการพัฒนาโดย Guido van Rossum ในช่วงปลายทศวรรษที่ 80 และต้นทศวรรษที่สถาบันวิจัยคณิตศาสตร์และวิทยาการคอมพิวเตอร์แห่งชาติในเนเธอร์แลนด์

Python มาจากภาษาอื่นๆ มากมาย รวมถึง ABC, Modula-3, C, C++, Algol-68, SmallTalk และ Unix shell และภาษาสคริปต์อื่นๆ

Python มีลิขสิทธิ์ เช่นเดียวกับ Perl ตอนนี้ซอร์สโค้ด Python พร้อมใช้งานภายใต้ GNU General Public License (GPL)

ขณะนี้ Python ได้รับการดูแลโดยทีมพัฒนาหลักของสถาบัน แม้ว่า Guido van Rossum จะยังคงมีบทบาทสำคัญในการกำกับความก้าวหน้า

อินพุตอื่นคือภาพมาสก์ (cloud.png) ผลลัพธ์สุดท้ายอยู่ทางด้านขวา

สร้าง Word Cloud โดยใช้ Python

โค้ดตัวอย่าง

import matplotlib.pyplot as pPlot
from wordcloud import WordCloud, STOPWORDS
import numpy as npy
from PIL import Image
dataset = open("sampleWords.txt", "r").read()
defcreate_word_cloud(string):
   maskArray = npy.array(Image.open("cloud.png"))
   cloud = WordCloud(background_color = "white", max_words = 200, mask = maskArray, stopwords = set(STOPWORDS))
   cloud.generate(string)
   cloud.to_file("wordCloud.png")
dataset = dataset.lower()
create_word_cloud(dataset)

ผลลัพธ์

สร้าง Word Cloud โดยใช้ Python