ในปัญหานี้มีไฟล์ที่มีข้อความอยู่บ้าง เราต้องสร้าง 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) ผลลัพธ์สุดท้ายอยู่ทางด้านขวา
โค้ดตัวอย่าง
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)