用python做一个关于乡村振兴的词云图
时间: 2023-06-21 15:04:16 浏览: 538
好的,下面是一个简单的例子:
首先,需要安装 `jieba` 和 `wordcloud` 库。可以在命令行中使用以下命令进行安装:
```
pip install jieba wordcloud
```
然后,我们需要准备一些文本数据。这里以乡村振兴政策文件为例,我在当前目录下新建了一个名为 `policy.txt` 的文件,并将相关政策内容复制到该文件中。
接下来,我们编写 Python 代码:
```python
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本数据
with open('policy.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用 jieba 分词
words = jieba.lcut(text)
# 过滤掉单个字和停用词
stopwords = ['的', '在', '和', '等', '是', '有', '将', '要', '对', '年', '月', '日', '乡村振兴']
filtered_words = [w for w in words if len(w) > 1 and w not in stopwords]
# 统计词频
word_counts = {}
for word in filtered_words:
word_counts[word] = word_counts.get(word, 0) + 1
# 生成词云图
wordcloud = WordCloud(font_path='msyh.ttc',
width=800,
height=600,
background_color='white',
max_words=100,
max_font_size=100).generate_from_frequencies(word_counts)
# 显示词云图
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')
plt.show()
```
解释一下代码:
- 首先,我们使用 `open()` 函数读取文本文件,并使用 `jieba` 库对文本进行分词。
- 然后,我们过滤掉单个字和停用词,只保留有意义的词语。这里我手动指定了一些常见的停用词,你也可以使用别的停用词表。
- 接着,我们统计每个词语出现的次数,然后使用 `WordCloud` 类生成词云图。在生成词云图时,我们指定了一些参数,比如字体、画布大小、最大词数、最大字体大小等等。
- 最后,使用 `imshow()` 函数显示词云图。
运行代码后,会看到一个词云图弹出来。如果你想保存词云图,可以使用 `wordcloud.to_file('wordcloud.png')` 将其保存为本地文件。
阅读全文