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


相关推荐
吃好睡好便好2 小时前
提取矩阵某一行或某一列元素
开发语言·人工智能·线性代数·算法·matlab·矩阵
小江的记录本4 小时前
【JVM虚拟机】垃圾回收GC:四种引用类型:强引用、软引用、弱引用、虚引用(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·后端·python·spring·面试
APIshop5 小时前
Python 获取 1688 商品采集 API 接口 | 工厂货源自动化对接商品信息 | 无需选品
运维·python·自动化
deepin_sir5 小时前
10 - 函数
开发语言·python
z落落5 小时前
C#String字符串
开发语言·c#·php
猫头虎-前端技术5 小时前
JS 作用域与闭包:从变量提升到闭包陷阱的超详细解析
开发语言·javascript·云计算·bootstrap·ecmascript·openstack·perl
charlee445 小时前
《GIS基础原理与技术实践》配套案例(Python版)
python·conda·numpy·gis·环境配置
枫叶林FYL5 小时前
项目十:事件溯源仓储管理系统(WMS)仿真实现
开发语言·python
繁华落尽,倾城殇?6 小时前
[C++11] : atomic,nullptr,default/delete,enum class
开发语言·c++·c++11·nullptr·atomic·enum class·default/delete
01_ice6 小时前
C语言数据在内存中的存储
c语言·开发语言