Wordcloud也能生成一个,带html的词云图文件吗??

-------------词云图集合-------------

WordCloud去掉停用词(fit_words+generate)的2种用法

通过词频来绘制词云图(jieba+WordCloud)

Python教程95:去掉停用词+词频统计+jieba.tokenize示例用法

将进酒---李白process_text词频统计,及词频可视化分析

使用wordcloud模块,绘制一个自定义的词云图形状

使用WordCloud模块中repeat参数,做一个关键字重复的词云图

关于词云图显示异常,出现乱码的解决办法

盘点WordCloud模块,词云图的相关知识点

Python源码05:使用Pyecharts画词云图图

1.简单的说一下实现思路:运行下面代码后,会生成一个名为wordcloud.html的文件,供后端使用。用浏览器打开这个文件,你会看到类似生成如下的词云图。这个示例代码通过Python生成词云图,并将图像转换为base64编码嵌入到HTML文件中,从而实现将词云图直接展示在网页上的效果。

python 复制代码
# -*- coding: utf-8 -*-
# @Author : 小红牛
# 微信公众号:WdPython
import io
import base64
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 1.准备一个词频字典
word_freq = {
    '李白': 700,
    '杜甫': 700,
    '李贺': 400,
    '苏东坡': 550,
    '杨过': 160,
    '张三丰': 100,
    '鬼谷子': 200,
    '韩信': 800,
    '姜尚': 900,
    '满江红': 90,
    '葬花吟': 50,
}
# 2.生成词云图的时候,如果含有中文的字,一定要添加一个中文的字体
# 如simkai.ttf为楷体
w = WordCloud(width=800, height=400, background_color='white',
              colormap='plasma', font_path='simkai.ttf')

w.fit_words(word_freq)

# 3.创建一个临时文件来保存图像
buffer = io.BytesIO()
plt.figure(figsize=(10, 5))
plt.imshow(w, interpolation='bilinear')
plt.axis('off')  # 关闭坐标轴
plt.savefig(buffer, format='png')
plt.close()

# 4.将图像转换为base64编码
buffer.seek(0)
img_str = base64.b64encode(buffer.read()).decode('utf-8')

# 5.创建HTML文件内容
html_content = f"""
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>我的Python教程</title>
    <style>
        body {{
            text-align: center;
            padding-top: 50px;
            background-color: #f0f0f0;
        }}
        img {{
            max-width: 100%;
            height: auto;
        }}
    </style>
</head>
<body>
    <h1>------中文词云图------</h1>
    <img src="data:image/png;base64,{img_str}" alt="Word Cloud">
</body>
</html>
"""

# 将HTML内容写入文件
with open('wordcloud.html', 'w', encoding='utf-8') as file:
    file.write(html_content)

print('wordcloud.html文件已经生成!!')

完毕!!感谢您的收看

----------★★历史博文集合★★----------

我的零基础Python教程,Python入门篇 进阶篇 视频教程 Py安装py项目 Python模块 Python爬虫 Json Xpath 正则表达式 Selenium Etree CssGui程序开发 Tkinter Pyqt5 列表元组字典数据可视化 matplotlib 词云图 Pyecharts 海龟画图 Pandas Bug处理 电脑小知识office自动化办公 编程工具 NumPy Pygame

相关推荐
nuowenyadelunwen2 小时前
CS 61A Lab 2 笔记:短路求值、高阶函数与 Lambda 表达式
python·函数式编程·cs61a·berkeley
qq_422828623 小时前
android图形学之SurfaceControl和Surface的关系 五
android·开发语言·python
weixin_444012933 小时前
c++如何将std--vector直接DUMP到二进制文件_指针地址直写【附代码】
jvm·数据库·python
woxihuan1234563 小时前
Go语言中--=运算符详解:位右移赋值操作的原理与应用
jvm·数据库·python
石山代码3 小时前
Python 数据分析三大库:NumPy + Pandas + Matplotlib
python·数据分析·numpy
如竟没有火炬3 小时前
用队列实现栈
开发语言·数据结构·python·算法·leetcode·深度优先
yivifu4 小时前
CustomTkinter的布局管理器介绍及应用
python·gui·customtkinter·pdf去水印
m0_690825824 小时前
如何备份被破坏的数据表_强制跳过错误的导出尝试
jvm·数据库·python
m0_733565464 小时前
JavaScript中Reflect-ownKeys获取所有键名的优势
jvm·数据库·python
水木流年追梦4 小时前
大模型入门-应用篇3-Agent智能体
开发语言·python·算法·leetcode·正则表达式