Hàm do người dùng định nghĩa để vẽ biểu đồ
Trong bài trước, bạn đã viết đoạn mã này để tạo biểu đồ:
# Subset tech and fmcg companies
subset_dat = dataset.loc[dataset["comp_type"].isin(["tech", "fmcg"])]
# Compute yearly average gross margin ratio of tech and fmcg companies
subset_dat_avg = subset_dat.pivot_table(index=["Year", "comp_type"], values = "gross_margin").reset_index()
# Add column company
subset_dat_avg["company"] = np.where(subset_dat_avg["comp_type"]=="tech", "Avg tech", "Avg fmcg")
# Concat the DataFrames
plot_df = pd.concat([subset_dat, subset_dat_avg], axis=0)
# Make the plot
sns.relplot(data=plot_df.reset_index(drop=True), x="Year", y="gross_margin", hue="company", col="comp_type", kind="line")
plt.show()
plt.close()
Hãy để ý rằng bạn thực hiện cùng một chuỗi thao tác cho cả DataFrame của nhóm công ty tech và FMCG trong bài này. Điều này lặp lại và đi ngược nguyên tắc viết mã DRY - Don't repeat yourself (đừng lặp lại). Mã lặp lại không tốt vì làm tăng khối lượng công việc và khiến mã dễ sai hơn. Trong bài này, bạn sẽ định nghĩa một hàm để xử lý dữ liệu và vẽ hình.
Bài tập này là một phần của khóa học
Phân tích báo cáo tài chính bằng Python
Bài tập tương tác thực hành
Biến lý thuyết thành hành động với một trong các bài tập tương tác của chúng tôi
Bắt đầu bài tập