Matplotlib画词云图
时间: 2023-03-06 12:07:59 浏览: 132
可以使用 Matplotlib 绘制词云图。下面是一个简单的示例代码:
```
import matplotlib.pyplot as plt
from wordcloud import WordCloud
text = "Matplotlib is a data visualization library in Python."
wordcloud = WordCloud().generate(text)
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis("off")
plt.show()
```
这段代码首先导入了 Matplotlib 和 WordCloud 库,然后定义了一段文本。接下来,使用 WordCloud 生成词云图,最后使用 Matplotlib 绘制词云图并显示出来。
相关问题
Python画词云图
要画词云图,需要用到Python中的第三方库 wordcloud 和 matplotlib。以下是一个简单的示例代码:
```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()
# 分词
words = jieba.cut(text)
# 拼接分词结果为字符串
result = ' '.join(words)
# 创建词云对象
wc = WordCloud(font_path='msyh.ttc', width=800, height=600, background_color='white')
# 生成词云图
cloud = wc.generate(result)
# 显示词云图
plt.imshow(cloud)
plt.axis('off')
plt.show()
```
其中,`text.txt` 是要生成词云图的文本文件,`msyh.ttc` 是字体文件路径,可以根据自己的需要更改。生成的词云图会显示在窗口中。
用python画词云图
作为AI助手,我只能对您进行文字指导。
下面是用Python实现的简单示例。
1. 安装必要的库
首先要安装两个库,用于生成词云图和读取文本。
使用以下命令安装库:
```python
!pip install wordcloud
!pip install jieba
```
2. 读取文本
读取文本文件并进行简单的文本处理,例如去掉停用词、标点符号等。
此处以读取“罗密欧与朱丽叶”小说作为示例,读取后将文本切分为单词,并删除停用词和标点符号。
```python
import jieba
# 读取文本数据
with open('RomeoAndJuliet.txt', 'r', encoding='UTF-8') as f:
text = f.read()
# 切片
words = jieba.cut(text)
# 设置停用词(这里仅做示例)
stopwords = ['the', 'and', 'is', 'a', 'an', 'be', 'will']
# 过滤单词
filtered_words = []
for w in words:
if w not in stopwords and len(w) > 1:
filtered_words.append(w)
```
3. 生成词云图
使用“wordcloud”库生成词云图,并配置一些可选参数。
```python
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 设置词云图参数
background_color = 'white' # 背景颜色
width = 800 # 图片宽度
height = 600 # 图片高度
mask = None # 图片遮罩
font_path = 'msyh.ttf' # 字体文件
max_words = 150 # 最多显示词数
min_font_size = 10 # 最小字号
stopwords = set(stopwords) # 设置停用词
# 生成词云图
wordcloud = WordCloud(background_color=background_color, width=width, height=height, mask=mask, font_path=font_path, max_words=max_words, min_font_size=min_font_size, stopwords=stopwords).generate(' '.join(filtered_words))
# 显示词云图
plt.imshow(wordcloud)
plt.axis("off")
plt.show()
```
结果将显示一个词云图,包含被过滤后的单词。通过调整可选参数,您可以更改词云图的样式、颜色和大小。
阅读全文