Bắt đầu ngayBắt đầu miễn phí

Vẽ chuỗi thời gian: tổng hợp tất cả

Trong bài này, bạn sẽ vẽ hai chuỗi thời gian có thang đo khác nhau trên cùng một Axes, và chú thích dữ liệu từ một trong hai chuỗi.

Dữ liệu CO2/nhiệt độ được cung cấp dưới dạng DataFrame tên climate_change. Bạn cũng nên sử dụng hàm đã định nghĩa trước đó, tên plot_timeseries, hàm này nhận một đối tượng Axes (đối số axes), vẽ một chuỗi thời gian (truyền qua các đối số xy), đặt nhãn cho trục x và trục y, đồng thời đặt màu cho dữ liệu và cho nhãn trục/y tick:

plot_timeseries(axes, x, y, color, xlabel, ylabel)

Sau đó, bạn sẽ chú thích bằng văn bản một mốc thời gian quan trọng trong dữ liệu: vào ngày 2015-10-06, khi nhiệt độ lần đầu tiên tăng trên mức trung bình hơn 1 độ.

Bài tập này là một phần của khóa học

Nhập môn trực quan hóa dữ liệu với Matplotlib

Xem khóa học

Hướng dẫn bài tập

  • Dùng hàm plot_timeseries để vẽ mức CO2 theo thời gian. Đặt xlabel là "Time (years)", ylabel là "CO2 levels" và color là 'blue'.
  • Tạo ax2 như một trục sinh đôi (twin) của Axes đầu tiên.
  • Trên ax2, vẽ nhiệt độ theo thời gian, đặt ylabel là "Relative temp (Celsius)" và color là 'red'.
  • Chú thích dữ liệu bằng phương thức ax2.annotate. Đặt văn bản ">1 degree" tại x=pd.Timestamp('2008-10-06'), y=-0.2 trỏ bằng một mũi tên xám mảnh tới x=pd.Timestamp('2015-10-06'), y=1.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

fig, ax = plt.subplots()

# Plot the CO2 levels time-series in blue
plot_timeseries(____, ____, ____, 'blue', ____, ____)

# Create an Axes object that shares the x-axis
ax2 = ____

# Plot the relative temperature data in red
plot_timeseries(____, ____, ____, 'red', ____, ____)

# Annotate point with relative temperature >1 degree
ax2.____(">1 degree", ____, ____, ____)

plt.show()
Chỉnh sửa và Chạy Mã