#python日常学习碎片
目录
前言
刚学了python的jieba库和wordcloud库,粗略绘制《鬼吹灯》词云图,代码仅供参考(doge)~
一、准备
vs code或者其它软件工具;电子书txt原文档;一张用于绘制词云图的底图
二、绘制
1.代码
代码如下(欢迎评论区讨论交流~):
import jieba
import wordcloud
import csv
from imageio import imread
mk = imread("词云图/图片/fivestart.jpg")
with open("鬼吹灯词频统计.csv","w",newline = "",encoding="utf-8-sig") as file:
writer = csv.writer(file)
writer.writerow(('名词','次数'))
excludes = {"我们","什么","没有","一个","就是","咱们","已经","东西","不是","这些","知道","这时","只好","最后","应该",\
"虽然","可以","可能","不过","自己","出来","时候","这种","现在","他们","这么","不会","赶紧","突然","立刻","像是",\
"里面","所以","那些","觉得","但是","而且","这里","还有","心中","怎么","说道","由于","众人","附近","原来",\
"你们","还是","不能","起来","地方","只有","不知","有些","于是","一样","过去","之后","身上","传说","找到",\
"发现","似乎","如果","其中","一些","许多","这个","下来","只是","地上","因为","只见","根本","究竟","地下"}
txt = open("词云图/电子书/鬼吹灯.txt","r",encoding = "utf-8").read()
words = jieba.lcut(txt)
counts = {}
for word in words:
if len(word) == 1:
continue
else:
counts[word] = counts.get(word,0) +1
for word in excludes:
del counts[word]
w = wordcloud.WordCloud(width = 1000,height = 700,background_color = "white",max_words=40,font_path="词云图/词云图要用到的字体/sxt.ttf",mask = mk)
w.generate_from_frequencies(counts)
w.to_file("鬼吹灯词云图.png")
print("完成")
items = list(counts.items())
items.sort(key=lambda x:x[1],reverse=True)
for i in range(15):
word,count = items[i]
print("{0:<10}{1:>5}".format(word,count))
with open("鬼吹灯词频统计.csv","a",newline = "",encoding="utf-8-sig") as file:
writer = csv.writer(file)
writer.writerow((word,count))
2.运行结果
运行几次之后大致筛选出来的:
3.CSV生成结果:
4.用于生成词云图的底图:
5.词云图生成结果:
总结
以上就是用python代码制作词云图的全部过程,欢迎各位读者在评论区讨论交流~