准备工作
- 相关的库需要准备好,详情见导入模块的所需
- 一个小说文本
- 一张白色底图
材料一览
》小说文本
》白色的底图
期望的效果
正文开始===》
导入模块
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
配置路径
img_path = "mr.jpg"
font_path = r'C:\Windows\Fonts\simhei.ttf'
准备文字内容
con = open('baixue.txt','r',encoding='utf8').read()
主要的处理
mask = np.array(Image.open(img_path))
wc1 = WordCloud(font_path=font_path,background_color='white', mask=mask).generate(con)
fig = plt.figure(1)
plt.imshow(wc1)
plt.axis('off')
显示与保存
# plt.show()
plt.savefig('wcmr.jpg',dpi=500)
完整的代码 200311
可以直接复制下面的代码,然后简单修改一下配置,再运行使用
# 导入功能所需要的模块 预计这里会有同学因为缺库导致运行失败
from wordcloud import WordCloud # pip install wordcloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
# 只需要修改这里的路径即可
# 配置相关文件的路径
img_path = "dlam.jpeg" # 图片的路径
# font_path = r'C:\Windows\Fonts\simhei.ttf'
font_path = r'C:\Windows\Fonts\msyhbd.ttc' # 字体路径
txt_path = 'story.txt' # 文本的路径
# 文本内容的获取
con = open(txt_path,'r',encoding='utf8').read()
# 主要的渲染工作
mask = np.array(Image.open(img_path))
wc1 = WordCloud(font_path=font_path,background_color='white', mask=mask).generate(con)
fig = plt.figure(1)
plt.imshow(wc1)
plt.axis('off')
# 保存图片
# plt.show()
plt.savefig('dlam.jpg',dpi=500)