Menu

Tự động hóa tạo biểu đồ Excel bằng Python và Matplotlib: Hướng dẫn cơ bản

Tạ Sĩ An 29/03/2026 01:01 579 lượt xem 0 trả lời

Chào các bác, dạo này em đang tập tành làm quen với Python để tự động hóa một số tác vụ lặp đi lặp lại với Excel. Sau khi đọc vài bài viết trong chuyên mục này, em thấy có nhiều anh chị chia sẻ về việc xử lý dữ liệu, hôm nay em mạnh dạn chia sẻ thêm về cách tự động hóa việc tạo biểu đồ bằng Python, cụ thể là thư viện Matplotlib. Cái này rất tiện khi mình cần tạo nhiều biểu đồ từ các bộ dữ liệu khác nhau mà không muốn mất công click chuột từng cái.

Đầu tiên, các bác cần cài đặt thư viện nếu chưa có:

pip install pandas matplotlib openpyxl

Tiếp theo, mình sẽ đọc dữ liệu từ file Excel bằng pandas, sau đó dùng matplotlib để vẽ biểu đồ. Dưới đây là một ví dụ đơn giản để vẽ biểu đồ cột:

import pandas as pd
import matplotlib.pyplot as plt

# Đọc dữ liệu từ file Excel
df = pd.read_excel('du_lieu.xlsx')

# Chọn cột dữ liệu để vẽ biểu đồ
x_values = df['Tên cột trục X']
y_values = df['Tên cột trục Y']

# Tạo biểu đồ
plt.figure(figsize=(10, 6)) # Kích thước biểu đồ
plt.bar(x_values, y_values, color='skyblue') # Vẽ biểu đồ cột

# Thêm tiêu đề và nhãn trục
plt.title('Biểu đồ minh họa dữ liệu')
plt.xlabel('Trục X')
plt.ylabel('Trục Y')

# Hiển thị biểu đồ
plt.tight_layout() # Tự động điều chỉnh bố cục
plt.show()

Với đoạn code này, các bác có thể tùy chỉnh rất nhiều: đổi loại biểu đồ (plt.plot cho biểu đồ đường, plt.scatter cho biểu đồ tán xạ...), thay đổi màu sắc, thêm chú thích, lưu biểu đồ ra file ảnh,...

Hy vọng chia sẻ nhỏ này hữu ích cho các bác đang muốn khám phá sức mạnh của Python kết hợp với Excel. Nếu có câu hỏi hay có cách làm nào hay hơn, mọi người cùng thảo luận nhé!

3

Hay quá bạn ơi! Mình cũng đang tìm hiểu về tự động hóa với Python cho Excel. Việc tạo biểu đồ bằng Matplotlib nghe rất hấp dẫn, đặc biệt là khi làm với nhiều bộ dữ liệu. Bạn có thể chia sẻ thêm về cách đọc dữ liệu từ file Excel vào Python để vẽ biểu đồ không? Mình đang dùng thư viện pandas nhưng chưa rành lắm.

0

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký