Hướng dẫn chart in python

Python Data Visualization – Trực quan hoá dữ liệu với Python.

Nội dung chính

  • Nhập dữ liệu
  • Matplotlib – Python Data Visualization
  • Scatter Plot – Python Data Visualization
  • Line Chart – Python Data Visualization
  • Histogram – Python Data Visualization
  • Bar Chart – Python Data Visualization
  • Pandas Visualization – Python Data Visualization
  • Scatter Plot – Python Data Visualization
  • Line Chart – Python Data Visualization
  • Histogram – Python Data Visualization
  • Bar Chart – Python Data Visualization
  • Kết luận

Trực quan hóa dữ liệu là quy tắc cố gắng hiểu dữ liệu bằng cách đặt dữ liệu vào ngữ cảnh trực quan để các mẫu, xu hướng và tương quan có thể dễ thể hiện.

Python cung cấp nhiều thư viện đồ họa tuyệt vời đi kèm với rất nhiều tính năng khác nhau. Dù bạn muốn tạo ra các tương tác, trực tiếp hoặc tùy biến cao, python đều có một thư viện tuyệt vời cho bạn.

Hướng dẫn chart in python

Để có một cái nhìn tổng quan, dưới đây là một vài thư viện phổ biến:

  • Matplotlib: cấp độ thấp, cung cấp nhiều tùy chỉnh
  • Pandas Visualization: giao diện dễ sử dụng, được xây dựng trên Matplotlib
  • Seaborn: giao diện cấp cao, kiểu mặc định tuyệt vời
  • ggplot: dựa trên ggplot2 của R, sử dụng Grammar of Graphics
  • Plotly: có thể tạo các ô tương tác

Trong bài viết này, chúng ta sẽ tìm hiểu cách tạo các ô cơ bản bằng cách sử dụng Matplotlib và Pandas cũng như cách sử dụng một số tính năng cụ thể của từng thư viện. Bài viết này sẽ tập trung vào cú pháp chứ không tập trung vào diễn giải các biểu đồ.

Nhập dữ liệu

Trong bài viết này, chúng tôi sẽ sử dụng hai bộ dữ liệu có sẵn miễn phí. Bộ dữ liệu Iris và Wine Reviews , cả hai chúng ta đều có thể tải bằng phương pháp read_csv pandas.

Hình 2: Đầu dữ liệu Iris

Hình 3: Đầu dữ liệu Wine Review

Matplotlib – Python Data Visualization

Matplotlib là thư viện python phổ biến nhất. Đây là một thư viện cấp thấp với giao diện giống Matlab, cung cấp rất nhiều sự tự do dù phải viết thêm code.

Để cài đặt Matplotlib, pip và conda có thể được sử dụng.

Pip install matplotlib
hoặc
conda install matplotlib

Matplotlib đặc biệt tốt để tạo các biểu đồ cơ bản như line charts, bar charts, histograms và nhiều hơn nữa. Nó có thể được nhập bằng cách gõ:

import matplotlib.pyplot as plt

Scatter Plot – Python Data Visualization

Để tạo một scatter plot trong Matplotlib, chúng ta có thể sử dụng phương thức scatter. Chúng ta cũng sẽ tạo một hình và một trục bằng cách sử dụng plt.subplots để chúng ta có thể cung cấp cho biểu đồ của mình một tiêu đề và nhãn.

Hình 4: Scatter plot Matplotlib

Chúng ta có thể cung cấp cho biểu đồ nhiều ý nghĩa hơn bằng cách tô màu trong mỗi điểm dữ liệu theo lớp của nó. Điều này có thể được thực hiện bằng cách tạo một từ điển ánh xạ từ lớp sang màu và sau đó tự phân tán từng điểm bằng cách sử dụng vòng lặp for và chuyển màu tương ứng.

Hình 5: Scatter Plot được tô màu theo lớp

Line Chart – Python Data Visualization

Trong Matplotlib, chúng ta có thể tạo một line chart cách gọi phương thức plot. Chúng ta cũng có thể vẽ nhiều cột trong một biểu đồ, bằng cách lặp qua các cột mà chúng ta muốn và vẽ từng cột trên cùng một trục.

Hình 6: Line Chart

Histogram – Python Data Visualization

Trong Matplotlib, chúng ta có thể tạo Histogram bằng phương thức hist. Nếu chúng ta chuyển dữ liệu phân loại như cột điểm từ bộ dữ liệu đánh giá, nó sẽ tự động tính toán tần suất mỗi lớp xảy ra.

Hình 7: Histogram

Bar Chart – Python Data Visualization

Một bar chart có thể được tạo bằng phương thức bar. Bar chart không tự động tính toán tần suất của danh mục nên chúng ta sẽ sử dụng chức năng value_counts pandas để thực hiện việc này. Bar chart rất hữu ích cho dữ liệu phân loại không có nhiều danh mục khác nhau (dưới 30) vì các biểu đồ khác có thể trở nên khá lộn xộn.

Hình 8: Bar-Chart

Pandas Visualization – Python Data Visualization

Pandas là một thư viện hiệu suất cao, dễ sử dụng, cung cấp các cấu trúc dữ liệu, như các tệp dữ liệu và các công cụ phân tích dữ liệu như các công cụ trực quan mà chúng ta sẽ sử dụng trong bài viết này.

Pandas Visualization dễ dàng tạo ra các plot từ một khung dữ liệu và chuỗi pandas. Nó cũng có API cấp cao hơn Matplotlib và do đó chúng ta cần ít code hơn cho cùng kết quả.

Pandas có thể được cài đặt bằng cách sử dụng pip hoặc conda.

pip install pandas
hoặc
conda install pandas

Scatter Plot – Python Data Visualization

Để tạo một scatter plot trong Pandas, chúng ta có thể gọi .plot.scatter() và truyền cho nó hai đối số, tên của cột x cũng như tên của cột y. Chúng ta cũng có thể cho nó một tiêu đề.

Hình 9: Scatter Plot

Như bạn có thể thấy trong hình, nó sẽ tự động đặt nhãn x và y thành tên cột.

Line Chart – Python Data Visualization

Để tạo một line chart trong Pandas, chúng ta có thể gọi .plot.line(). Trong khi ở Matplotlib, chúng ta cần lặp lại từng cột mà chúng tôi muốn vẽ, trong Pandas chúng ta không cần phải làm điều này vì nó tự động vẽ tất cả các cột số có sẵn (ít nhất là nếu chúng tôi không chỉ định một cột cụ thể).

Hình 10: Line Chart

Nếu chúng ta có nhiều hơn một tính năng thì Pandas sẽ tự động tạo một chú thích, như có thể thấy trong hình trên.

Histogram – Python Data Visualization

Trong Pandas, chúng ta có thể tạo một Histogram với phương thức plot.hist. Không có bất kỳ đối số bắt buộc nào nhưng chúng ta có thể tùy ý chuyển một số như kích thước.

Hình 11: Histogram

Nó cũng thực sự dễ dàng để tạo ra nhiều histogram.

Hình 12: Nhiều Histogram

Đối số subplots chỉ định rằng chúng ta muốn có một plot riêng cho từng tính năng và layout chỉ định số lượng plot trên mỗi hàng và cột.

Bar Chart – Python Data Visualization

Để vẽ bar chart, chúng ta có thể sử dụng phương thức plot.bar(), nhưng trước khi chúng ta có thể gọi nó, chúng ta cần lấy dữ liệu của mình. Đối với điều này, trước tiên chúng ta sẽ đếm các lần xuất hiện bằng phương thức value_count() và sau đó sắp xếp các lần xuất hiện từ nhỏ nhất đến lớn nhất bằng phương thức sort_index().

Hình 13: Bar-Chart dọc

Phương pháp này cũng rất đơn giản để tạo một biểu đồ thanh ngang bằng phương thức plot.barh() này.

Hình 14: Bar-Chart ngang

Chúng ta cũng có thể vẽ các dữ liệu khác vào đây.

Hình 15: Các quốc gia có rượu vang đắt nhất (theo trung bình)

Trong ví dụ trên, chúng tôi đã nhóm dữ liệu theo quốc gia và sau đó lấy giá trị trung bình của giá rượu, và vẽ 5 quốc gia có giá rượu trung bình cao nhất.

Kết luận

Để bắt kịp xu hướng và đồng thời nâng cấp kho kiến thức của bản thân, thì việc biết, học và hiểu được Data Visualization là một trong những yếu tố mang lại sự khác biệt giữa một Junior Marketing với một Senior Marketing trong việc report công việc và số liệu cho Manager của mình. Để đáp ứng nhu cầu đó, Nordic Coder– Trung tâm đào tạo lập trình hàng đầu đang khai giảng khoá học Data Visualization – Trực quan hoá dữ liệu, để hỗ trợ một cách bài bản về cách làm, đọc dữ liệu, phân tích, dự báo,…. Còn chần chờ gì nữa mà không đăng ký học thử nào mọi người.