1. Làm quen với Plotly
Giới thiệu về hình ảnh hóa tương tác
Chào mừng bạn đến với thế giới của sức mạnh bí ẩn! Hôm nay chúng ta sẽ mở rộng kỹ năng hình ảnh hóa dữ liệu của mình bằng cách thêm chút tương tác với thư viện Plotly.
Hãy tưởng tượng rằng bạn tổ chức một bữa tiệc và các biểu đồ tĩnh của bạn là những người khách mà bạn đã thảo luận hết mọi thứ. Chúng có ích, nhưng bạn muốn những cuộc thảo luận sống động. Đây chính là lúc Plotly xuất hiện, đưa các biểu đồ của bạn trở nên sống động, phản ứng và thậm chí là giải trí cho bạn. Với Plotly, bạn có thể zoom, pan và tương tác với dữ liệu, làm cho phân tích trở nên sâu sắc và minh họa hơn.
Plotly là gì và nó có ý nghĩa gì
Plotly là một thư viện đa chức năng để tạo biểu đồ, hỗ trợ mức độ tương tác cao. Nó lý tưởng cho những trường hợp bạn muốn biểu đồ của mình dễ hiểu và dễ khám phá hơn. Plotly được sử dụng trong nhiều lĩnh vực: từ kinh doanh đến nghiên cứu khoa học, mang lại các công cụ mạnh mẽ để hình ảnh hóa dữ liệu trong trình duyệt web.
Trong thực tế, nó rất hữu ích khi bạn cần trình bày dữ liệu cho cấp trên, những người quan tâm đến chi tiết, hoặc khi bạn muốn tạo bảng điều khiển phân tích tương tác. Ví dụ, trong marketing, các biểu đồ tương tác giúp dễ dàng phân tích cơ sở khách hàng, trong khi trong khoa học, nó giúp khảo sát dữ liệu thực nghiệm.
So sánh Matplotlib và Plotly
Bây giờ hãy cùng tìm hiểu sự khác biệt giữa Plotly và Matplotlib. Matplotlib là một công cụ tốt để tạo các biểu đồ tĩnh và in ấn, khi bạn cần các hình ảnh được kiểm soát chặt chẽ. Tuy nhiên, trong thời đại mà tương tác ngày càng trở nên quan trọng, Plotly đã trở thành người dẫn đầu. Khác với Matplotlib, Plotly dễ dàng tạo các biểu đồ tương tác mà bạn có thể nhúng trực tiếp vào các trang web.
Nó giống như sự so sánh giữa một album ảnh và một cuốn sách ma thuật. Trong album ảnh, bạn có thể thưởng thức các trang và hình ảnh, nhưng trong cuốn sách ma thuật, bạn có thể lật các trang mà chúng tự kể cho bạn những câu chuyện, sống động ngay trước mắt bạn. (Bài giảng này được viết trước khi điện ảnh ra đời :)
Cài đặt và cấu hình Plotly
Hãy cùng bắt tay vào và cấu hình môi trường của chúng ta để làm việc với Plotly.
Cài đặt Plotly: Giống như hầu hết các công cụ tuyệt vời trong Python, Plotly có thể được cài đặt qua pip. Hãy mở dòng lệnh hoặc terminal và chạy lệnh sau:
pip install plotly
Nhập thư viện: Sau khi cài đặt, để bắt đầu vẽ, chúng ta cần nhập các thư viện cần thiết:
import plotly.express as px
import plotly.graph_objects as go
Trong đó plotly.express
là API đơn giản hơn để tạo biểu đồ nhanh, còn plotly.graph_objects
là cách tiếp cận linh hoạt hơn cho hình ảnh hóa phức tạp.
2. Biểu đồ tương tác đầu tiên
Tạo biểu đồ tương tác đầu tiên
Bây giờ chúng ta đã có mọi thứ cần thiết, hãy tạo biểu đồ tương tác đầu tiên của mình. Bắt đầu với một ví dụ đơn giản - biểu đồ đường thẳng.
import plotly.express as px
import pandas as pd
# Dữ liệu ví dụ
data = pd.DataFrame({
"Ngày": pd.date_range(start="2023-01-01", periods=7),
"Doanh số": [150, 230, 270, 300, 190, 210, 280]
})
# Tạo biểu đồ tương tác
fig = px.line(data, x="Ngày", y="Doanh số", title="Doanh số trong tuần")
fig.show()
Mã này sẽ tạo một biểu đồ đường mà bạn có thể khám phá, phóng to và di chuyển. Nhờ tính tương tác, bạn có thể tập trung tốt hơn vào các vùng dữ liệu mình quan tâm.

Cấu hình tính tương tác
Plotly cho phép bạn dễ dàng thêm các yếu tố tương tác. Ví dụ, bạn có thể bật chế độ chọn dữ liệu, zoom và pan:
fig.update_layout(
xaxis=dict(rangeslider=dict(visible=True)),
title=dict(x=0.5) # Căn giữa tiêu đề
)
fig.show()
Ở đây chúng ta đã bật thanh trượt phạm vi (rangeslider) và căn giữa tiêu đề. Điều này sẽ làm cho biểu đồ của bạn linh hoạt và thân thiện hơn với người dùng.

3. Tạo các loại biểu đồ tương tác khác nhau
Plotly hỗ trợ một loạt các loại biểu đồ tương tác. Đây là một số ví dụ:
Biểu đồ phân tán
Biểu đồ phân tán hữu ích để phân tích mối tương quan giữa hai biến.
import plotly.express as px
# Dữ liệu cho biểu đồ
data = {
"Thời gian": [1, 2, 3, 4, 5, 6],
"Nhiệt độ": [30, 32, 34, 33, 31, 29]
}
fig = px.scatter(data, x="Thời gian", y="Nhiệt độ", title="Nhiệt độ theo thời gian")
fig.show()
Biểu đồ histogram
Histogram hữu ích để phân tích phân phối dữ liệu và nhận biết sự bất thường.
import plotly.express as px
# Dữ liệu cho biểu đồ
data = {
"Điểm số": [3, 4, 4, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 8, 9, 10]
}
fig = px.histogram(data, x="Điểm số", title="Phân phối điểm số")
fig.show()
Biểu đồ hình tròn
Biểu đồ hình tròn giúp hiển thị tỷ lệ phần trăm giữa các danh mục.
import plotly.express as px
# Dữ liệu cho biểu đồ
data = {
"Danh mục": ["A", "B", "C", "D"],
"Tỷ lệ": [20, 30, 25, 25]
}
fig = px.pie(data, names="Danh mục", values="Tỷ lệ", title="Tỷ lệ các danh mục")
fig.show()

Ứng dụng trong các dự án thực tế
Plotly có nhiều ứng dụng trong các lĩnh vực khác nhau. Hãy cùng xem vài ví dụ.
- Phân tích kinh doanh: Plotly thường được sử dụng để tạo các bảng điều khiển tương tác, nơi người dùng có thể khám phá dữ liệu, thay đổi bộ lọc và tham số phân tích ngay lập tức.
- Nghiên cứu khoa học: Các nhà nghiên cứu sử dụng Plotly để hình ảnh hóa dữ liệu nhiều cấp, giúp đơn giản hóa việc nhận biết các mẫu và sự bất thường trong dữ liệu.
Bạn cũng có thể tích hợp các biểu đồ Plotly vào Jupyter Notebook, ứng dụng web và thậm chí là các thử nghiệm A/B, làm cho nghiên cứu của bạn dễ tiếp cận và minh họa hơn.
Nếu bạn muốn tìm hiểu sâu hơn, hãy chắc chắn xem qua tài liệu chính thức của Plotly, nơi bạn sẽ tìm thấy vô số ví dụ và ý tưởng. Giờ thì tiến lên và tạo những kiệt tác tương tác! 🚀