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:

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Cách thêm Progress Bar trong Python với chỉ một dòng Code

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Toán tử Walrus Operator- Tính năng mới trong Python 3.8

Cách nạp dữ liệu Machine Learning từ File trong Python

Cách nạp dữ liệu Machine Learning từ File trong Python

Hướng dẫn sử dụng Google Sheets API với Python

Hướng dẫn sử dụng Google Sheets API với Python

Xây dựng  web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng web Python tự động hóa Twitter | Flask, Heroku, Twitter API & Google Sheets API

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Xây dựng Web Machine Learning đẹp mắt với Streamlit và Scikit-learn trong Python

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

Hướng dẫn tạo Chatbot đơn giản bằng PyTorch

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

11 mẹo và thủ thuật để viết Code Python hiệu quả hơn

Hướng dẫn làm ứng dụng TODO với Flask dành cho người mới bắt đầu trong Python

Hướng dẫn làm ứng dụng TODO với Flask dành cho người mới bắt đầu trong Python

Hướng dẫn viết Snake Game bằng Python

Hướng dẫn viết Snake Game bằng Python

Cách sử dụng chế độ interactive trong Python

Cách sử dụng chế độ interactive trong Python

Cách sử dụng Python Debugger với hàm breakpoint()

Cách sử dụng Python Debugger với hàm breakpoint()

Xây dựng ứng dụng Web Style Transfer với PyTorch và Streamlit

Xây dựng ứng dụng Web Style Transfer với PyTorch và Streamlit

Cách cài đặt Jupyter Notebook trong môi trường Conda và thêm Kernel

Cách cài đặt Jupyter Notebook trong môi trường Conda và thêm Kernel

Hướng dẫn xây dựng ứng dụng dự đoán giá cổ phiếu bằng Python

Hướng dẫn xây dựng ứng dụng dự đoán giá cổ phiếu bằng Python

Hướng dẫn tạo ứng dụng AI hội thoại với NVIDIA Jarvis trong Python

Hướng dẫn tạo ứng dụng AI hội thoại với NVIDIA Jarvis trong Python

Hỗ trợ Async trong Django 3.1

Hỗ trợ Async trong Django 3.1

8 mẹo tái cấu trúc Python giúp mã sạch hơn và Pythonic

8 mẹo tái cấu trúc Python giúp mã sạch hơn và Pythonic

Ý nghĩa của if __name__ ==

Ý nghĩa của if __name__ == "__main__" trong Python

Cách xóa phần tử trong danh sách Python

Cách xóa phần tử trong danh sách Python

Top