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.成果图


相关推荐
apcipot_rain2 小时前
C++转Java日记(06)
java·开发语言
锋行天下5 小时前
langgraph 后端发自定义数据,前端接收方法概括
人工智能·python
benchmark_cc7 小时前
用 QuantDash 读取单只股票五档盘口:抽样、缺失值检查与复现记录
python·数据分析·pandas·量化交易·股票数据·quantdash
曲径海盗8 小时前
【Python 学习第 55 天】列表基础
python·学习笔记·编程入门
专注仿真8 小时前
知识问答模型用到的算法集详解及代码实例
python·算法·代码·大模型训练·控制算法
jyOverQ8 小时前
我写了一个 CSDN Markdown 图片助手:告别本地图片逐张上传
python·工具·csdn
SomeOtherTime9 小时前
Rust所有权(AI回答)
开发语言·后端·rust
Easyhood9 小时前
Android 开发入门实践(十四):Compose 副作用入门与四个常用 API
android·开发语言·kotlin·android jetpack·compose
白杨尚青10 小时前
C++进阶篇(六):map 和 set 的模拟实现——用红黑树封装 mymap/myset(迭代器 + operator[])
开发语言·c++·迭代器·stl·set·map·红黑树
刘马想放假11 小时前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket