使用Python创建词云
在这个问题中,有一个包含一些文本的文件。我们必须从这些文本和一个遮罩图像中创建词云。程序将词云图像存储为png格式。
为了实现这个问题,我们需要使用一些Python库。这些库是matplotlib、wordcloud、numpy、tkinter和PIL。
要安装这些库,我们需要遵循以下命令:
安装库
$ sudo pip3 install matplotlib $ sudo pip3 install wordcloud $ sudo apt-get install python3-tk
添加这些库后,我们可以编写Python代码来执行任务。
算法
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于20世纪80年代末和90年代初在荷兰国家数学和计算机科学研究所开发。
Python源于许多其他语言,包括ABC、Modula-3、C、C++、Algol-68、SmallTalk和Unix shell以及其他脚本语言。
Python受版权保护。与Perl一样,Python源代码现在可在GNU通用公共许可证(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)
输出
广告