MATPLOTLIB
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Đọc tất cả dữ liệu bán sản phẩm và hiển thị bằng biểu đồ nhiều dòng bằng Python

Trong bài viết này, mình sẽ cùng nhau tìm hiểu cách đọc dữ liệu bán sản phẩm từ một file CSV và sau đó hiển thị nó dưới dạng biểu đồ nhiều dòng, trong đó mỗi sản phẩm sẽ có một đường biểu diễn riêng. Bài tập này giúp bạn làm quen với việc trực quan hóa dữ liệu sử dụng biểu đồ nhiều dòng bằng Matplotlib và Pandas.

Hiển thị số lượng đơn vị bán được mỗi tháng cho mỗi sản phẩm bằng cách sử dụng các ô nhiều dòng. (tức là có Plotline riêng cho từng sản phẩm).

Biểu đồ sẽ trông như thế này.

12 jpg

Bước 1: Import thư viện Pandas và Matplotlib

Đầu tiên, hãy import thư viện Pandas để làm việc với dữ liệu và thư viện Matplotlib để vẽ đồ thị.

import pandas as pd
import matplotlib.pyplot as plt

Bước 2: Đọc dữ liệu từ file CSV

Tiếp theo sử dụng hàm pd.read_csv() để đọc dữ liệu từ file CSV và lưu nó vào một DataFrame.

df = pd.read_csv("sales_data.csv")

Bước 3: Trích xuất dữ liệu bán sản phẩm từ DataFrame

Sau đó sử dụng phương thức .tolist() để chuyển cột dữ liệu thành danh sách.

monthList = df['month_number'].tolist()
faceCremSalesData = df['facecream'].tolist()
faceWashSalesData = df['facewash'].tolist()
toothPasteSalesData = df['toothpaste'].tolist()
bathingsoapSalesData = df['bathingsoap'].tolist()
shampooSalesData = df['shampoo'].tolist()
moisturizerSalesData = df['moisturizer'].tolist()

Bước 4: Vẽ biểu đồ nhiều dòng

Mình sử dụng hàm plt.plot() để vẽ biểu đồ nhiều dòng, với mỗi sản phẩm sẽ có một đường biểu diễn riêng.

plt.plot(monthList, faceCremSalesData, label='Dữ liệu bán kem dưỡng da', marker='o', linewidth=3)
plt.plot(monthList, faceWashSalesData, label='Dữ liệu bán sữa rửa mặt', marker='o', linewidth=3)
plt.plot(monthList, toothPasteSalesData, label='Dữ liệu bán kem đánh răng', marker='o', linewidth=3)
plt.plot(monthList, bathingsoapSalesData, label='Dữ liệu bán xà phòng tắm', marker='o', linewidth=3)
plt.plot(monthList, shampooSalesData, label='Dữ liệu bán dầu gội', marker='o', linewidth=3)
plt.plot(monthList, moisturizerSalesData, label='Dữ liệu bán kem dưỡng ẩm', marker='o', linewidth=3)

Bước 5: Cấu hình biểu đồ

Sử dụng các hàm plt.xlabel(), plt.ylabel(), plt.legend(), plt.xticks(), plt.yticks() plt.title() để cấu hình biểu đồ.

plt.xlabel('Số tháng')
plt.ylabel('Số đơn vị đã bán')
plt.legend(loc='upper left')
plt.xticks(monthList)
plt.yticks([1000, 2000, 4000, 6000, 8000, 10000, 12000, 15000, 18000])
plt.title('Dữ liệu bán sản phẩm')

Bước 6: Hiển thị biểu đồ

Cuối cùng, mình sử dụng plt.show() để hiển thị biểu đồ đã vẽ.

plt.show()

Kết quả

Khi bạn chạy chương trình và đảm bảo rằng bạn đã có file CSV "sales_data.csv" trong cùng thư mục với mã nguồn của bạn, bạn sẽ nhận được biểu đồ nhiều dòng thể hiện số đơn vị đã bán của từng sản phẩm theo từng tháng:

12 jpg

Biểu đồ nhiều dòng

Chúc mừng bạn đã thành công đọc dữ liệu bán sản phẩm và hiển thị nó bằng biểu đồ nhiều dòng sử dụng Matplotlib và Pandas. Bài tập này giúp bạn làm quen với việc trực quan hóa dữ liệu bằng biểu đồ nhiều dòng và sử dụng Matplotlib và Pandas trong Python. Chúc các bạn thành công và tiếp tục khám phá thế giới trực quan hóa dữ liệu!

test php

Bài giải

-------------------- ######## --------------------

Câu hỏi thường gặp liên quan:

Cùng chuyên mục:

Hướng dẫn xây dựng Command-Line Interface (CLI) bằng Quo trong Python

Hướng dẫn xây dựng Command-Line Interface (CLI) bằng Quo trong Python

Hướng dẫn toàn diện về module datetime trong Python

Hướng dẫn toàn diện về module datetime trong Python

Cách truy cập và thiết lập biến môi trường trong Python

Cách truy cập và thiết lập biến môi trường trong Python

Lớp dữ liệu (Data Classes) trong Python với decorator @dataclass

Lớp dữ liệu (Data Classes) trong Python với decorator @dataclass

Từ khóa yield trong Python

Từ khóa yield trong Python

Sự khác biệt giữa sort() và sorted() trong Python

Sự khác biệt giữa sort() và sorted() trong Python

Sử dụng Poetry để quản lý dependencies trong Python

Sử dụng Poetry để quản lý dependencies trong Python

Định dạng chuỗi Strings trong Python

Định dạng chuỗi Strings trong Python

Một tác vụ phổ biến khi làm việc với danh sách trong Python

Một tác vụ phổ biến khi làm việc với danh sách trong Python

Làm việc với các biến môi trường trong Python

Làm việc với các biến môi trường trong Python

Sự khác biệt giữa set() và frozenset() trong Python

Sự khác biệt giữa set() và frozenset() trong Python

Sự khác biệt giữa iterator và iterable trong Python

Sự khác biệt giữa iterator và iterable trong Python

Cách làm việc với file tarball/tar trong Python

Cách làm việc với file tarball/tar trong Python

Chuyển đổi kiểu dữ liệu trong Python

Chuyển đổi kiểu dữ liệu trong Python

Sự khác biệt giữa toán tử == và is trong Python

Sự khác biệt giữa toán tử == và is trong Python

Làm việc với file ZIP trong Python

Làm việc với file ZIP trong Python

Cách sử dụng ThreadPoolExecutor trong Python

Cách sử dụng ThreadPoolExecutor trong Python

Sự khác biệt giữa byte objects và string trong Python

Sự khác biệt giữa byte objects và string trong Python

Xử lý độ chính xác các hàm floor, ceil, round, trunc, format  trong Python

Xử lý độ chính xác các hàm floor, ceil, round, trunc, format trong Python

Cách lặp qua nhiều list với hàm zip() trong Python

Cách lặp qua nhiều list với hàm zip() trong Python

Top