读取存储《哈姆雷特》英文剧本的文件,分析统计其中单词出现的频率,使用turtle模块绘制词频统计结果,以柱状图的形式展示统计结果
时间: 2024-02-21 14:57:21 浏览: 30
1,1)到(9,9)的九个点。算法使用曼哈顿距离作为启发函数,好的,让我来帮你解决这个问题。首先,我们需要先读取《哈姆雷特》英文剧本的文件。代码如下:
```python
with open("hamlet.txt", "r") as f:
data = f.read().replace('\n', ' ')
```
接下来,我们需要统计单词出现的频率。这里我们可以使用Python中的collections模块中的Counter类来实现。代码如下:
```python
import collections
# 将所有单词转换为小写,并分割单词
words = data.lower().split()
# 统计单词出现的使用优先队列来维护搜索队列。最后,使用matplotlib库将结果绘制成图像,其中障碍频率
word_count = collections.Counter(words)
```
最后,我们可以使用turtle模块来绘制柱状图。代码如下:
```python
import turtle
# 定义画布和画笔
wn = turtle.Screen()
wn.title("词频统计结果")
wn.bgcolor("white")
pen = turtle.Turtle()
pen.speed(0)
pen.hideturtle()
pen.penup()
pen.goto(-200, 200)
# 绘制柱状图
for i, (word, count) in enumerate(word_count.m_common(10)):
pen.write(f"{word}: {count}", font=("Arial", 16, "normal"))
pen.goto(-180, 180 - i * 40)
pen.pendown()
pen.setheading(0)
pen.begin_fill()
pen.forward(count * 10)
pen.right(90)
pen.forward(30)
pen.right(90)
pen.forward(count * 10)
pen.end_fill()
pen.penup()
# 关闭画布
wn.mainloop()
```
这样,我们就完成了对《哈姆雷特》英文剧本中单词出现频率的统计,并用turtle模块绘制了柱状图展示结果。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)