用Python写代码,每隔5行出现一次标题行,标题为A,b,c。需要去除重复的标题行并在一张纸上画出标题行为a,b,c的折线图
时间: 2023-06-20 22:03:36 浏览: 78
利用python画出折线图
以下是代码实现:
```python
import matplotlib.pyplot as plt
# 读取数据
data = []
with open('data.txt', 'r') as f:
for line in f:
data.append(line.strip())
# 去除重复标题
titles = []
for i, d in enumerate(data):
if i % 5 == 0 and d not in titles:
titles.append(d)
# 统计数据
counts = {t: 0 for t in titles}
for d in data:
if d in counts:
counts[d] += 1
# 绘制折线图
x = range(len(titles))
y = [counts[t] for t in titles]
plt.plot(x, y)
plt.xticks(x, titles)
plt.title('Count of A, B, C')
plt.xlabel('Title')
plt.ylabel('Count')
plt.show()
```
其中,假设数据存储在 `data.txt` 文件中,每行一个数据。首先读取数据,然后遍历每五行出现一次标题行的位置,将标题行存储到 `titles` 列表中去重。接着统计每个标题出现的次数,将结果存储到 `counts` 字典中。最后使用 `matplotlib` 库绘制折线图,横坐标为标题,纵坐标为出现次数。
阅读全文