Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】

这篇具有很好参考价值的文章主要介绍了Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

❄️Python制作圣诞树词云-中文

🐬展示效果

Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】,Python领域开发技术应用技术,python,圣诞节,圣诞节词云,节日,圣诞树,圣诞节代码

🌸代码

# -*- coding: UTF-8 -*-
import jieba
import re
from stylecloud import gen_stylecloud
from PIL import Image
import numpy as np


with open('./圣诞素材/Christmas.txt', encoding="utf-8") as f:
  data = f.read()

# 文本预处理  去除一些无用的字符   只提取出中文出来
new_data = re.findall('[\u4e00-\u9fa5]+', data, re.S)
new_data = "/".join(new_data)

# 文本分词  精确模式
seg_list_exact = jieba.cut(new_data, cut_all=False)

# 加载停用词
with open('stop_words.txt', encoding='utf-8') as f:
  # 获取每一行的停用词 添加进集合
  con = f.read().split('\n')
  stop_words = set()
  for i in con:
      stop_words.add(i)

# 列表解析式  去除停用词和单个词
result_list = [word for word in seg_list_exact if word not in stop_words and len(word) > 1]
print(result_list)

# 个人推荐使用的palette配色方案  效果挺好看   其他测试过  感觉一般~~
# colorbrewer.qualitative.Dark2_7
# cartocolors.qualitative.Bold_5
# colorbrewer.qualitative.Set1_8
gen_stylecloud(
  text=' '.join(result_list),                   # 文本数据
  size=600,                                     # 词云图大小
  font_path=r'./font/猫啃网糖圆体.ttf',          # 中文词云  显示需要设置字体
  icon_name = "fas fa-tree",                    # 图标
  output_name='./results/圣诞树06.png',          # 输出词云图名称
  palette='cartocolors.qualitative.Bold_5',     # 选取配色方案
)

🌴代码剖析

这段代码使用了jieba进行中文分词,结合stylecloud库生成了一个基于指定配色方案的圣诞主题词云图。以下是对代码的解释:

  1. import jieba:导入中文分词库jieba。

  2. import re:导入正则表达式库。

  3. from stylecloud import gen_stylecloud:导入stylecloud库中的生成词云图的函数。

  4. from PIL import Image:导入Python Imaging Library(PIL)中的Image类。

  5. import numpy as np:导入numpy库并使用别名np。

  6. with open('./圣诞素材/Christmas.txt', encoding="utf-8") as f::打开文件’Christmas.txt’,并使用utf-8编码读取。

  7. data = f.read():将文件内容读取到变量data中。

  8. new_data = re.findall('[\u4e00-\u9fa5]+', data, re.S):使用正则表达式提取data中的中文字符,放入new_data中。

  9. new_data = "/".join(new_data):将提取的中文字符用’/'连接成字符串。

  10. seg_list_exact = jieba.cut(new_data, cut_all=False):使用jieba库进行中文分词,采用精确模式。

  11. with open('stop_words.txt', encoding='utf-8') as f::打开停用词文件’stop_words.txt’,并使用utf-8编码读取。

  12. con = f.read().split('\n'):读取文件内容并按行分割,得到停用词列表。

  13. stop_words = set(con):将停用词列表转换为集合,方便快速检查词是否在停用词中。

  14. result_list = [word for word in seg_list_exact if word not in stop_words and len(word) > 1]:使用列表解析式过滤掉停用词和长度为1的词,得到最终的分词结果。

  15. gen_stylecloud(text=' '.join(result_list), size=600, font_path=r'./font/猫啃网糖圆体.ttf', icon_name="fas fa-tree", output_name='./results/圣诞树06.png', palette='cartocolors.qualitative.Bold_5'):使用gen_stylecloud函数生成词云图。

  • text=' '.join(result_list):将分词结果连接成一个字符串。
  • size=600:设置词云图大小为600。
  • font_path=r'./font/猫啃网糖圆体.ttf':指定中文显示所需的字体文件路径。
  • icon_name="fas fa-tree":指定词云图中的图标,这里使用了一个圣诞树图标。
  • output_name='./results/圣诞树06.png':指定输出词云图的文件路径和名称。
  • palette='cartocolors.qualitative.Bold_5':选择了一个配色方案。

注意:在运行之前,请确保已安装相应的库,可以使用以下命令进行安装:

pip install jieba stylecloud Pillow numpy

❄️Python制作圣诞树词云-英文

🐬展示效果

Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】,Python领域开发技术应用技术,python,圣诞节,圣诞节词云,节日,圣诞树,圣诞节代码

🌸代码

from wordcloud import WordCloud
import PIL.Image as image
import numpy as np

# 一些变量值,依据自己实际情况进行设置
edcoding_type = "utf-8"               # 编码方式     
background_color = "white"            # 生成图片的背景颜色
txt_path = "little red-cap.txt"       # 文本路径
mask_path = "mask.png"                # 词云形状掩码路径
img_path = "red-cap_wordcloud.png"    # 输出生成的词云图片路径
max_words = 200                       # 最大显示词数量

# 读取文本内容
def get_txt(txtpath):
    with open(txtpath, encoding = edcoding_type) as f:
        text = f.read()
    return text

# 生成词云
def generate_wordcloud(wordlist, maskpath, backgroundcolor, maxwords):
    mask = np.array(image.open(maskpath))                      # 设置图形掩码
    wordcloud = WordCloud(
        background_color = backgroundcolor,                    # 设置图片背景颜色
        mask = mask,                                           # 设置掩码
        max_words = maxwords                                   # 设置最大显示词数
    ).generate(wordlist)                                
    return wordcloud

text = get_txt(txt_path)                                       # 获取文本
word_cloud = generate_wordcloud(text,                          # 生成词云
                                mask_path,
                                background_color,
                                max_words)
image_file = word_cloud.to_image()                             # 生成图片
image_file.show()                                              # 显示图片
word_cloud.to_file(img_path)                                   # 保存生成的图片

🌴代码剖析

这段代码使用了WordCloud库生成了一个基于给定文本的词云图。以下是对代码的解释:

  1. from wordcloud import WordCloud:导入WordCloud库,用于生成词云。

  2. import PIL.Image as image:导入PIL库中的Image类,用于处理图像。

  3. import numpy as np:导入NumPy库并使用别名np。

  4. edcoding_type = "utf-8":设置文本的编码方式为UTF-8。

  5. background_color = "white":设置生成图片的背景颜色为白色。

  6. txt_path = "little red-cap.txt":设置文本文件的路径。

  7. mask_path = "mask.png":设置词云形状的掩码文件路径。

  8. img_path = "red-cap_wordcloud.png":设置输出生成的词云图片的路径。

  9. max_words = 200:设置最大显示词数量为200。

  10. def get_txt(txtpath)::定义函数get_txt,用于读取文本内容。

  • with open(txtpath, encoding=edcoding_type) as f::打开文本文件,并使用指定的编码方式读取文件内容。
  • text = f.read():将文件内容读取到变量text中。
  • return text:返回读取到的文本内容。
  1. def generate_wordcloud(wordlist, maskpath, backgroundcolor, maxwords)::定义函数generate_wordcloud,用于生成词云图。
  • mask = np.array(image.open(maskpath)):将图形掩码加载为NumPy数组。
  • WordCloud(...).generate(wordlist):使用WordCloud生成词云图,设置了背景颜色、掩码和最大显示词数。
  • return wordcloud:返回生成的词云对象。
  1. text = get_txt(txt_path):调用get_txt函数获取文本内容。
  2. word_cloud = generate_wordcloud(text, mask_path, background_color, max_words):调用generate_wordcloud函数生成词云图。
  3. image_file = word_cloud.to_image():将词云对象转换为图像对象。
  4. image_file.show():显示生成的词云图。
  5. word_cloud.to_file(img_path):将生成的词云图保存为图片文件。

🎅圣诞节快乐!

愿你的圣诞充满温馨和欢笑,家人团聚,友谊长存。在这个特别的时刻,愿你感受到爱的温暖,希望的明亮。愿你的心充满喜悦,新的一年里,幸福、健康、平安与你同行。圣诞快乐!

Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】,Python领域开发技术应用技术,python,圣诞节,圣诞节词云,节日,圣诞树,圣诞节代码文章来源地址https://www.toymoban.com/news/detail-761844.html

到了这里,关于Python生成圣诞节词云-代码案例剖析【第17篇—python圣诞节系列】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MATLAB | 圣诞节快到了,一起画两款动态圣诞树吧~

    hey, 圣诞节又双要到了,提前祝各位MATLABer,各位准研究生们,圣诞快乐,旗开得胜!~ 今天带来两款圣诞树哈,都是可以旋转的: 原理和我去年发的圣诞树非常像,大家如果感兴趣可以去自行搜一下哈,这里就不浪费大篇幅写原理啦,此外,金色圣诞树的外形参考了以下两部

    2024年02月03日
    浏览(50)
  • 圣诞节教你如何用Html+JS+CSS绘制3D动画圣诞树

    上篇文章给大家提供了一个如何生成静态圣诞树的demo。但是那样还不够高级,如何高级起来,当然是3D立体带动画效果了。 先看效果图: 源码如下: 将源码复制保存到html中打开即可。源码都是些基本的知识,不过多讲解。

    2024年02月03日
    浏览(64)
  • 股市中的Santa Claus Rally (圣诞节行情)

    Santa Claus Rally 是指 12 月 25 日圣诞节前后股市的持续上涨这样一个现象。《股票交易员年鉴》的创始人 Yale Hirsch 于 1972 年创造了这个定义,他将当年最后五个交易日和次年前两个交易日的时间范围定义为反弹日期。 根据 CFRA Research 的发现,自 1945 年以来,SP 500 指数(标准普

    2024年02月03日
    浏览(42)
  • 圣诞节酷炫特效合集【含十几个HTML+CSS前端特效+34个桌面酷炫圣诞程序】

    ❤️源码获取:订阅后见文末 ❤️内容介绍:包含HTML+CSS等十几个圣诞特效;以及三十四个桌面酷炫圣诞树合集 ❤️订阅后所得如下: ❤️HTML圣诞+桌面圣诞程序效果如下: 下方展示代码仅举例其中几个 所有效果源码及文件订阅后找博主获取即可

    2024年02月04日
    浏览(49)
  • Python进行文本处理分析与词云生成——以三国演义为例(含代码讲解)

             在Python中处理文本数据是一种常见的任务,这需要使用到多种字符串操作和数据结构。本文将详细解读如何调用jieba、wordcloud以及 matplotlib这些库进行文本处理分析与词云制作。          在我们导入所需要的库之前我们需要先在pycharm中下载并安装库,步骤如下:

    2024年02月04日
    浏览(36)
  • 生成一个可以下雪的动态圣诞树HTML代码

    这是一个简单的例子,展示如何使用 HTML、CSS 和 JavaScript 创建一个动态圣诞树,可以下雪:

    2024年02月03日
    浏览(51)
  • 通过Python的wordcloud库将单词生成词云(心形形状)

    大家好,我是空空star,本篇给大家分享一下通过Python的wordcloud库将单词生成 词云(心形形状) 。 Python的wordcloud库是一个用于生成词云的Python包。它可以将一段文本中出现频率高的单词按其出现频率大小以及颜色深浅排列成一个词云图形,从而更好地展示文本中的信息。 使用

    2024年02月05日
    浏览(39)
  • Python 圣诞树代码

    1.本章将会讲解Python编程 实现圣诞树效果! 2.圣诞节介绍 基督教纪念耶稣诞生的重要节日。亦称耶稣圣诞节、主降生节,天主教亦称耶稣圣诞瞻礼。耶稣诞生的日期,《圣经》并无记载。公元336年罗马教会开始在12月25日过此节。12月25日原是罗马帝国规定的太阳神诞辰。有人

    2024年02月03日
    浏览(67)
  • Python圣诞树代码

    2024年02月04日
    浏览(56)
  • python圣诞树代码编程

    以下是一个简单的Python圣诞树代码: def draw_tree(height):     for i in range(height):         print(\\\' \\\' * (height - i - 1) + \\\'*\\\' * (2 * i + 1))     print(\\\' \\\' * (height - 1) + \\\'|\\\') draw_tree(10) 这个函数会绘制一个等腰三角形,其中每一行的星号数量从1开始,每次递增2,空格数量则相反,从等腰三

    2024年02月05日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包