假设知道了列表a中电影分别在2017-09-14(b_14),2017-09-15(b_15),2017-09-16(b_16)三天的票房,为了展示列表中电影本身的票房以及同其它电影的数据对比情况,应该如何更加直观的呈现数据? a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"] b_16 = [15746,312,4497,319] b_15 = [12357,156,2045,168] b_14 = [2358,399,2358,362]
时间: 2024-03-31 20:33:26 浏览: 99
为了更加直观的呈现数据,可以使用堆叠柱状图来展示每个电影在三天内的票房情况,并且可以将不同电影在同一天的票房进行对比。以下是使用 matplotlib 库绘制堆叠柱状图的示例代码:
```python
import matplotlib.pyplot as plt
# 定义电影名称和对应的票房数据
a = ["猩球崛起3:终极之战","敦刻尔克","蜘蛛侠:英雄归来","战狼2"]
b_14 = [2358,399,2358,362]
b_15 = [12357,156,2045,168]
b_16 = [15746,312,4497,319]
# 定义柱状图的宽度
bar_width = 0.2
# 绘制堆叠柱状图
plt.bar(a, b_14, width=bar_width, label='9月14日')
plt.bar(a, b_15, width=bar_width, bottom=b_14, label='9月15日')
plt.bar(a, b_16, width=bar_width, bottom=[sum(x) for x in zip(b_14, b_15)], label='9月16日')
# 添加图例
plt.legend()
# 显示图形
plt.show()
```
以上代码会生成一个堆叠柱状图,其中 X 轴表示电影名称,Y 轴表示票房数量。每个电影在三天内的票房情况使用不同颜色的柱形图进行展示,并且同一天的数据会堆叠在一起。在绘制完成后,会自动生成一个图例,其中包含了每个柱形图对应的日期信息。通过这个图形,你可以更加直观地了解每个电影在三天内的票房情况,并且可以方便地进行对比分析。
阅读全文