wordcloud兼figma的词云图片python生成

文章目录

一.Figma

1.简介

Figma是一款全平台可使用的使用软件,和Sketch功能差不多;但是他可以在Mac,Windows PC,Linux计算机甚至Chromebook,目前iPad也可以使用。不再受系统的限制,只要你可以打开网页,理论上基本可以使用这款工具

  1. 它不需要使用苹果笔记本电脑也能使用
  2. 它储存文件不需要占用本地内存
  3. 它可以将你的设计以一个链接的形式分享给所有人

2.特点

  1. 全平台使用
  2. 云端文件
  3. 历史版本
    自动保存功能
  4. 共享协作
  5. 实时协作
  6. 团队沟通
  7. 组件和共享样式

我们通过Figma来准备本次主题的词云生成原型图

二.代码构成

我们在项目中创建该除记号笔标记之外的文件

1.详细代码

word.py

py 复制代码
from wordcloud import WordCloud
import jieba
import matplotlib.pyplot as plt
import imageio
# 使用imageio来加载图像

with open('content.text', 'r', encoding='utf-8') as file:
    text = file.read()

words = ' '.join(jieba.cut(text))

# 掩模图片
mask_image_url = "Frame_1.png"

# 读取图片
mask_image = imageio.imread(mask_image_url)

font_path = 'C:\Windows\Fonts\simsun.ttc'
# 这里需要一个支持中文的字体文件,宋体

wordcloud = WordCloud(font_path=font_path,  # 指定中文字体
                      width=800, height=800,
                      mask=mask_image,  # 这里指定掩模
                      background_color='white',
                      contour_width=0,  # 边缘轮廓宽度
                      contour_color='steelblue',  # 边缘轮廓颜色
                      min_font_size=10).generate(words)

plt.figure(figsize=(8, 8), facecolor=None)
plt.imshow(wordcloud, interpolation="bilinear")  # 使用平滑插值
plt.axis("off")
plt.tight_layout(pad=0)
plt.savefig('wordcloud.png', dpi=800, bbox_inches='tight') # 生成图片

# plt.show()

content.text

text 复制代码
PUA你 CPU你 KTV你 PPT你 UFO你 M3 又幸福了姐 配享太庙 一吃一个不吱声 小孩姐 小孩哥 公主请上车 哈哈哈~惹到我算是提到棉花啦
冤种 小镇做题家 团长 退!退!退! 龙行龘龘 前程朤朤 智能+ 快手短视频 脱光 996 碳中和 city不city 健康最贵 生命无价 好家伙
真有你的 原来如此 大可不必 人间不值得 打工人 干饭人 野性消费 一键三连 后浪 破防了 有内味儿了 绝绝子 硬核 躺平 二次元 真香警告
U1S1 暴躁老哥 懂王 老父亲 电子竞技没有爱情 为爱发电 一键复制

Frame_1.png

由于是虚拟环境conda中运行,需要使用pip或者npm导包,需要初始化

bash 复制代码
npm init -y

以生成一个存包的快捷方式,否则可能导致无法运行

2.word.py代码详解

py 复制代码
from wordcloud import WordCloud
import jieba
import matplotlib.pyplot as plt
import imageio
# 使用imageio来加载图像

首先通过pip安装导包,在该虚拟环境中运行:

bash 复制代码
pip install --upgrade wordcloud imageio matplotlib jieba

代码不爆红即说明导包成功

py 复制代码
with open('content.text', 'r', encoding='utf-8') as file:
    text = file.read()

# 分词
words = ' '.join(jieba.cut(text))

通过with中open与file把content.text中的内容赋予text

利用jieba中的cut方法以空格为坐标把词分离

py 复制代码
# 掩模图片
mask_image_url = "Frame_1.png"

# 读取图片
mask_image = imageio.imread(mask_image_url)

font_path = 'C:\Windows\Fonts\simsun.ttc'
# 这里需要一个支持中文的字体文件,宋体

3个变量把原形模板图片与字体引入

py 复制代码
wordcloud = WordCloud(font_path=font_path,  # 指定中文字体
                      width=800, height=800,
                      mask=mask_image,  # 这里指定掩模
                      background_color='white',
                      contour_width=0,  # 边缘轮廓宽度
                      contour_color='steelblue',  # 边缘轮廓颜色
                      min_font_size=10).generate(words)

定义生成图的样式,类似css的作用

py 复制代码
plt.figure(figsize=(8, 8), facecolor=None) # 设置画布大小
plt.imshow(wordcloud, interpolation="bilinear")  # 使用平滑插值
plt.axis("off") # 关闭坐标轴
plt.tight_layout(pad=0) # 设置紧凑布局
plt.savefig('wordcloud.png', dpi=800, bbox_inches='tight') # 生成图片

利用plt方法将生成图的布局设置,最后通过savefig生成图片

3.成果图


相关推荐
用户9562562542911 小时前
跟做:Firecrawl 单页转 Markdown 再丢进沙箱总结
python·api
威哥爱编程11 小时前
模拟面试智能体开发实战 02:回答等半分钟,谁还愿意练?把服务端和流式输出搭起来
python·agent·harmonyos
威哥爱编程11 小时前
模拟面试智能体开发实战 01:面试挂了都不知道挂在哪?用 Python 给自己造一个随叫随到的 AI 面试官
python·agent·harmonyos
2601_9679801112 小时前
Python行情API量化 02:顺序拉 20 要 2 秒?并发批量把时间压到 0.5 秒
python·api·限流·并发·量化
伞伞悦读12 小时前
【第81期】特征缩放怎么选:标准化、MinMax 与 Robust 的原理、泄漏对照和完整实验
人工智能·python·深度学习·机器学习
新*12 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer
David猪大卫13 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
卷无止境14 小时前
mathmodel-figure-templates 以及两个上手案例
后端·python
fengci.15 小时前
CTF2MISC中等部分
开发语言·前端·学习
锋行天下15 小时前
服务器 Python 2.7 装不了 langgraph-cli?用本地生成 Dockerfile 曲线救国
人工智能·后端·python