Python读取word文件并绘制词云图

1、安装必要的库

pip install python-docx wordcloud matplotlib

2、完整代码

import docx
from wordcloud import WordCloud
import matplotlib.pyplot as plt

# 读取Word文件内容
def read_word_file(file_path):
    doc = docx.Document(file_path)
    full_text = []
    for para in doc.paragraphs:
        full_text.append(para.text)
    return '\n'.join(full_text)

# 生成词云图
def generate_wordcloud(text):
    wordcloud = WordCloud(width=800, height=400, background_color='white').generate(text)
    
    # 显示词云图
    plt.figure(figsize=(10, 5))
    plt.imshow(wordcloud, interpolation='bilinear')
    plt.axis('off')
    plt.show()

# 主函数
def main():
    file_path = 'your_word_file.docx'  # 替换为你的Word文件路径
    text = read_word_file(file_path)
    generate_wordcloud(text)

if __name__ == "__main__":
    main()

3、修改中文乱码错误

注意:
要是出现中文乱码的情况,可以用以下方式修改:
在这里插入图片描述
添加字体

wordcloud = WordCloud(width=800, height=400, background_color='white', font_path='simhei.ttf').generate(text)

在这里插入图片描述

修改之后的效果:
在这里插入图片描述

4、详细解释

详细解释

安装库:

  • python-docx:用于读取Word文件。
  • wordcloud:用于生成词云图。
  • matplotlib:用于显示词云图。

读取Word文件内容:

  • 使用python-docx的Document类读取Word文件。
  • 遍历文档中的段落,将每个段落的文本添加到一个列表中。
  • 将所有段落的文本合并为一个字符串。

生成词云图:

  • 使用wordcloud的WordCloud类生成词云图。
  • 设置词云图的宽度、高度和背景颜色。
  • 调用generate方法生成词云图。
  • 使用matplotlib显示词云图。

注意事项

  • 确保你的Word文件路径正确。
  • 可以根据需要调整词云图的参数,如颜色、字体等。
  • 如果文本中有很多常见词或停用词,可以使用WordCloud的stopwords参数排除它们。

通过以上步骤,你可以轻松地读取Word文件并生成漂亮的词云图。

相关推荐

  1. 文本分析之绘制

    2024-07-12 05:14:03       55 阅读
  2. 使用 Python 读取 Word 文件

    2024-07-12 05:14:03       38 阅读
  3. python 创建word添加文字和统计

    2024-07-12 05:14:03       37 阅读
  4. Python文本数据可视化之“

    2024-07-12 05:14:03       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 05:14:03       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 05:14:03       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 05:14:03       57 阅读
  4. Python语言-面向对象

    2024-07-12 05:14:03       68 阅读

热门阅读

  1. NoSQL之Redis配置与优化

    2024-07-12 05:14:03       32 阅读
  2. web自动化环境搭建[基于Chrome]+常用元素定位方式

    2024-07-12 05:14:03       26 阅读
  3. OPenCV实现直方图均衡化----20240711

    2024-07-12 05:14:03       22 阅读
  4. DNS负载均衡的底层实现原理

    2024-07-12 05:14:03       29 阅读
  5. ls命令学习记录1

    2024-07-12 05:14:03       27 阅读
  6. ARM Ubuntu 主机安装指定版本Python

    2024-07-12 05:14:03       26 阅读
  7. sqlite3 — DB-API 2.0 interface for SQLite databases

    2024-07-12 05:14:03       23 阅读
  8. arm 版的 deb、rpm、AppImage 都有什么区别

    2024-07-12 05:14:03       28 阅读