用python假设某同字通过网络爬中从网络上爬取到如下一段文字 text .Python Python Python Matplotlib Matpl otlib Seaborn Network Plot Violin Chart PandasDatascience Wordcloud Spider Radar Parrallel Al oha Color Brewer Density Scatter Barplot BarplotBoxplot Violinplot Treemap Stacked Area Chart C hart Visualization Dataviz Donut Pie Time-SeriesWordcloud Wordcloud Sankey Bubble" 请编写程示代码,将这段文字给制为一个词云图,要求如下 配置绘制词云固所需环境; 在词云围中加入你的姓名; 若能实现词频统计,可获得更高的分数。
时间: 2024-02-07 11:02:12 浏览: 173
Network-Visualization-Tool:使用python GUI显示网络使用情况
好的,以下是绘制带有形状的词云图的代码:
```python
# 导入需要用到的库
import wordcloud
import matplotlib.pyplot as plt
import numpy as np
from PIL import Image
import collections
# 定义文本
text = "Python Python Python Matplotlib Matplotlib Seaborn Network Plot Violin Chart Pandas Datascience Wordcloud Spider Radar Parrallel Aloha Color Brewer Density Scatter Barplot Barplot Boxplot Violinplot Treemap Stacked Area Chart Chart Visualization Dataviz Donut Pie Time-Series Wordcloud Wordcloud Sankey Bubble"
# 进行词频统计
word_counts = collections.Counter(text.split())
print(word_counts)
# 读取形状图片
mask = np.array(Image.open("heart.png"))
# 生成词云
my_wordcloud = wordcloud.WordCloud(width=800, height=400, background_color='white', font_path='msyh.ttc', mask=mask)
my_wordcloud.generate_from_frequencies(word_counts)
# 在词云图中加入姓名
my_wordcloud = my_wordcloud.generate(text + " 姓名")
# 显示词云
plt.imshow(my_wordcloud, interpolation='bilinear')
plt.axis('off')
plt.show()
```
在这个代码中,我们使用了 `numpy` 和 `PIL` 库来读取形状图片,并使用 `mask` 参数指定了词云图的形状。在生成词云图的时候,我们使用了 `generate_from_frequencies` 函数指定了词频统计结果。在词云图中加入姓名的时候,我们直接在 `text` 变量中加上了姓名。最后在显示词云图的时候,我们使用了 `interpolation` 参数来指定插值方法。
阅读全文