使用python绘制词云图
时间: 2023-10-24 16:16:43 浏览: 149
要使用Python绘制词云图,需要安装相应的库。常用的库有wordcloud、matplotlib、numpy、jieba等。
以下是一个简单的示例代码:
```python
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用jieba分词
words = jieba.cut(text)
# 合并分词结果
words = ' '.join(words)
# 生成词云图
wc = WordCloud(width=800, height=600, background_color='white').generate(words)
# 显示词云图
plt.imshow(wc)
plt.axis('off')
plt.show()
# 保存词云图
wc.to_file('wordcloud.png')
```
以上代码中,我们首先读取了一个文本文件,然后使用jieba分词将文本进行分词,接着使用WordCloud库生成词云图。最后使用matplotlib库将词云图显示出来,并保存为图片。
相关问题
使用python绘制词云图,使用背景图片生成词云图
要使用Python绘制词云图,可以使用Python第三方库`wordcloud`。这个库可以根据给定的文本数据生成词云图。要生成带有背景图片的词云图,可以使用`WordCloud`类的`mask`参数。
以下是一个示例代码,演示如何使用`wordcloud`库生成带有背景图片的词云图:
```python
from wordcloud import WordCloud, STOPWORDS
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
# 读取文本文件
text = open('text.txt', 'r', encoding='utf-8').read()
# 读取背景图片
background = np.array(Image.open("background.png"))
# 创建停用词集合
stopwords = set(STOPWORDS)
stopwords.add("said")
# 创建词云对象
wc = WordCloud(background_color="white", max_words=2000, mask=background,
stopwords=stopwords, contour_width=3, contour_color='steelblue')
# 生成词云图
wc.generate(text)
# 显示词云图
plt.imshow(wc, interpolation='bilinear')
plt.axis("off")
plt.show()
```
在上面的代码中,首先使用`open`函数读取文本文件,然后使用`np.array`函数读取背景图片。接着创建停用词集合,用于过滤掉一些常见的词语,比如“said”。然后创建`WordCloud`对象,设置一些参数,比如背景颜色、最大词数、掩膜图片、停用词等。最后使用`generate`方法生成词云图,使用`imshow`方法显示词云图。
注意,该代码中使用了词云图的默认字体。如果你想更改字体,可以在创建`WordCloud`对象时使用`font_path`参数,指定你想要使用的字体文件路径。
使用python绘制词云图的简单代码
下面是一个使用Python绘制词云图的简单代码示例,需要安装`wordcloud`和`matplotlib`这两个库:
```
import matplotlib.pyplot as plt
from wordcloud import WordCloud
text = "这是一段用于生成词云的文本" # 待生成词云的文本
# 生成词云
wordcloud = WordCloud(background_color="white").generate(text)
# 显示词云
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis("off")
plt.show()
```
这段代码会生成一个简单的白色背景词云图,显示出文本中出现频率较高的单词。如果需要更多的操作,可以参考`wordcloud`库的文档。
阅读全文