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文件并生成漂亮的词云图。