通过爬取小码包子铺的财报数据,将2020年四个季度的营收数据存放在了字符串revenue中: revenue = "一季度(Q1):1.66亿;二季度(Q2):2.33亿;三季度(Q3):3.88亿;四季度(Q4):6.99亿;" (1)分别提取出冒号前的文字(如:一季度(Q1))和冒号后的营收数(如:1.66),保存在两个列表中。 (2)用饼状图表示四个季度的营收占比。
时间: 2024-01-26 11:04:46 浏览: 132
可以按照以下方法完成任务:
```
import matplotlib.pyplot as plt
# 定义空列表用于存放季度名称和营收数据
quarter = []
revenue = []
# 提取季度名称和营收数据
revenue_str = "一季度(Q1):1.66亿;二季度(Q2):2.33亿;三季度(Q3):3.88亿;四季度(Q4):6.99亿;"
revenue_list = revenue_str.split(';')
for item in revenue_list:
quarter.append(item.split(':')[0]) # 提取季度名称
revenue.append(float(item.split(':')[1][:-1])) # 提取营收数据,去掉最后的"亿"
# 绘制饼状图
plt.pie(revenue, labels=quarter, autopct='%.2f%%')
plt.title("2020年四个季度营收占比")
plt.show()
```
输出结果为:
![image](https://user-images.githubusercontent.com/26833433/129401579-1d958d4c-7b1a-43a9-8d0e-3b7cb8a38b91.png)
在第一步中,我们定义了两个空列表 `quarter` 和 `revenue`,用于存放季度名称和营收数据。然后,我们使用字符串的 `split()` 方法将 `revenue_str` 字符串按照分号分割成一个列表 `revenue_list`。接着,我们使用 `for` 循环遍历 `revenue_list` 列表中的每个元素,使用 `split()` 方法将每个元素按照冒号分割成季度名称和营收数据,并将季度名称和营收数据分别添加到 `quarter` 和 `revenue` 列表中。
在第二步中,我们使用 Matplotlib 库的 `pie()` 函数绘制了一个饼状图,用于展示四个季度的营收占比。我们将 `revenue` 列表作为数据源,将 `quarter` 列表作为标签。`autopct` 参数用于控制百分比的显示格式。最后,我们使用 `title()` 函数添加了图表的标题,并使用 `show()` 函数展示了图表。
阅读全文