Để căn chỉnh biểu đồ cột và đường trên cùng một trục X nhưng hai trục Y riêng biệt, ta dùng phương thức twinx().
Các bước
- Thiết lập figure size và autolayout.
- Tạo DataFrame Pandas với 2 cột dữ liệu.
- Vẽ biểu đồ cột bằng plot(kind="bar").
- Tạo trục Y thứ hai chung trục X bằng twinx().
- Vẽ đường trên trục Y thứ hai sử dụng ticks của trục đầu tiên và giá trị DataFrame.
- Hiển thị bằng show().
Ví dụ
from matplotlib import pyplot as plt
import pandas as pd
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
df = pd.DataFrame({"col1": [1, 3, 5, 7, 1], "col2": [1, 5, 7, 9, 1]})
ax = df.plot(kind="bar")
ax2 = ax.twinx()
ax2.plot(ax.get_xticks(), df[['col1', 'col2']].values, linestyle='-', marker='o', linewidth=2.0)
plt.show()
Kết quả
