Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Tự động hóa xử lý dữ liệu Excel bằng Python: Tích hợp API và tạo biểu đồ với Matplotlib

Trác Năng Minh 23/03/2026 20:31 272 lượt xem 1 trả lời

Chào mọi người,

Dạo gần đây mình có làm một dự án nhỏ để tự động hóa việc lấy dữ liệu từ một API bên ngoài, sau đó xử lý và trực quan hóa bằng Excel. Mình nhận thấy Python thực sự là một công cụ mạnh mẽ khi kết hợp với Excel, đặc biệt là khi làm việc với dữ liệu lớn hoặc cần tự động hóa các tác vụ lặp đi lặp lại.

Trong bài viết này, mình muốn chia sẻ cách mình đã làm để:

  • Lấy dữ liệu từ một API (ví dụ: API thời tiết hoặc tỷ giá).
  • Xử lý dữ liệu bằng thư viện Pandas.
  • Tạo biểu đồ trực quan từ dữ liệu đã xử lý và lưu vào file Excel bằng Matplotlib.

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

pip install requests pandas matplotlib openpyxl

Tiếp theo là code Python:

import requests
import pandas as pd
import matplotlib.pyplot as plt

# Bước 1: Lấy dữ liệu từ API
api_url = "YOUR_API_ENDPOINT"
response = requests.get(api_url)
data = response.json()

# Bước 2: Xử lý dữ liệu với Pandas
df = pd.DataFrame(data['results']) # Giả sử dữ liệu trả về có key 'results'
# Thực hiện các phép xử lý dữ liệu tại đây, ví dụ:
df['date'] = pd.to_datetime(df['timestamp'], unit='s')
df = df.set_index('date')

# Bước 3: Tạo biểu đồ với Matplotlib
plt.figure(figsize=(10, 6))
plt.plot(df['value'], label='Giá trị') # Giả sử có cột 'value'
plt.title('Biểu đồ giá trị theo thời gian')
plt.xlabel('Thời gian')
plt.ylabel('Giá trị')
plt.legend()
plt.grid(True)

# Lưu biểu đồ vào file Excel
output_filename = "report.xlsx"
with pd.ExcelWriter(output_filename, engine='openpyxl') as writer:
    df.to_excel(writer, sheet_name='Data')
    # Lưu biểu đồ vào sheet khác
    workbook = writer.book
    worksheet = workbook.create_sheet('Chart')
    # Cách lưu biểu đồ vào Excel khá phức tạp, ở đây mình chỉ minh họa ý tưởng
    # Bạn có thể tìm hiểu thêm về cách nhúng biểu đồ vào Excel bằng openpyxl
    # hoặc đơn giản là lưu ảnh biểu đồ riêng rồi chèn thủ công.
    plt.savefig('chart.png')
    # from openpyxl.drawing.image import Image
    # img = Image('chart.png')
    # worksheet.add_image(img, 'B2')

print(f"Đã tạo báo cáo và biểu đồ tại {output_filename}")

Cách nhúng biểu đồ vào Excel có thể hơi phức tạp, nhưng bạn có thể lưu ảnh biểu đồ ra file riêng rồi chèn thủ công vào file Excel sau khi chạy script. Hoặc tìm hiểu sâu hơn về thư viện openpyxl để tự động hóa việc này.

Hy vọng chia sẻ này hữu ích cho các bạn đang muốn tự động hóa công việc với Excel bằng Python.

2

Hay quá bạn ơi! Mình cũng đang tìm hiểu về cách tự động hóa Excel bằng Python. Bạn có thể chia sẻ chi tiết hơn về cách bạn tích hợp API vào Python để lấy dữ liệu được không? Mình đang gặp khó khăn ở phần này.

2

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

Đăng nhập Đăng ký