1、文章来源:
搜索若米尼的《战争艺术概论》txt并下载
2、编程基本思路:
下载第三方库wordcloud
通过观看spoc视频讲解,编写源代码
下载字体
下载背景图片:
3、源代码:
import jieba import wordcloud from imageio import imread mask = imread("soldier2.jpg") excludes = {"一个","如果","这种","可以","这些","可能","需要","因为", "就是","应该","那么","但是","一支","没有","这个","一些"} f = open("战争艺术概论.txt", "r", encoding="utf-8") t = f.read() f.close() ls = jieba.lcut(t) txt = " ".join(ls) w = wordcloud.WordCloud(font_step=2,width = 1000, height = 700, background_color = "white", font_path = "博洋行楷.ttf", mask = mask, stopwords=excludes) w.generate(txt) w.to_file("战争艺术概论.png")
4、最终结果:
5、遇到问题及解决:
(1)在下载wordcloud库时,遇到一些问题,我参考同学分享的经验得以解决https://www.cnblogs.com/pythonyx/p/12615278.html
(2)在制作词云时,一开始,制作的词云效果是这样的:
像“一人”、“可以”、“如果”等冗余的词语太多,于是,我设置stopwords,在设置的时候根据上周所学的词频统计,
得到出现次数最多的词语,然后再在其中进行挑选
最终确定的排除词
(3)关于字体和图片,我找到一个免费下载字体的网站:http://www.downcc.com/font/list_200_1.html,并通过实践,知道.ttc和.ttf格式
的字体都可以,而背景图片只能是.jpg格式