Cột chồng và biểu đồ vùng
Thể hiện các phần cộng lại theo thời gian bằng cột chồng (bottom=) và ax.stackplot.
Giới thiệu
Khi nhiều chuỗi số cộng lại thành một tổng, hãy xếp chồng chúng. Mỗi cột bắt đầu tại nơi cột trước kết thúc, nên chiều cao cả cột là tổng còn mỗi phần màu là một chuỗi. ax.stackplot làm điều tương tự với các vùng tô màu.
bottom= cho mỗi lệnh ax.bar biết cột bắt đầu từ đâu: mobile nằm trên desktop, tablet nằm trên cả hai. Dùng mảng NumPy giúp desktop + mobile cộng từng năm với nhau. Chiều cao mỗi cột là tổng lượt truy cập năm đó, còn chú giải phân biệt các phần.
Trình mô phỏng tương tác
So sánh cột chồng, cột nhóm và biểu đồ vùng, rồi chuyển sang phần trăm để xem tỷ lệ của từng thiết bị.
Ví dụ Matplotlib chạy được
Matplotlib
main.py
import matplotlib.pyplot as plt
import numpy as np
years = ["2022", "2023", "2024", "2025"]
desktop = np.array([50, 48, 45, 40])
mobile = np.array([30, 45, 60, 80])
tablet = np.array([10, 12, 11, 9])
fig, ax = plt.subplots(figsize=(7, 4))
ax.bar(years, desktop, label="Desktop")
ax.bar(years, mobile, bottom=desktop, label="Mobile")
ax.bar(years, tablet, bottom=desktop + mobile, label="Tablet")
ax.set_ylabel("Visits (thousands)")
ax.set_title("Visits by device")
ax.legend()
plt.show()
