Kiến thức
11 phút đọc

Tạo Hình Ảnh Power BI Bằng Cách Sử Dụng Python

Với Power BI Desktop , bạn có thể sử dụng Python để trực quan hóa dữ liệu của mình.

1. Điều kiện tiên quyết để tạo hình ảnh Power BI bằng Python

Làm việc thông qua phần hướng dẫn Run Python scripts trong Power BI Desktop bằng cách sử dụng tập lệnh Python sau:

import pandas as pd 

df = pd.DataFrame({ 

    ‘Fname’:[‘Harry’,’Sally’,’Paul’,’Abe’,’June’,’Mike’,’Tom’], 

    ‘Age’:[21,34,42,18,24,80,22], 

    ‘Weight’: [180, 130, 200, 140, 176, 142, 210], 

    ‘Gender’:[‘M’,’F’,’M’,’M’,’F’,’M’,’M’], 

    ‘State’:[‘Washington’,’Oregon’,’California’,’Washington’,’Nevada’,’Texas’,’Nevada’],

    ‘Children’:[4,1,2,3,0,2,0],

    ‘Pets’:[3,2,2,5,0,1,5] 

}) 

print (df) 

Bài viết hướng dẫn Run Python scripts trong Power BI Desktop hướng dẫn bạn cách cài đặt nó trên máy cục bộ của bạn và kích hoạt nó cho tập lệnh Python trong Power BI Desktop. Hướng dẫn này sử dụng dữ liệu từ tập lệnh trên để minh họa việc tạo hình ảnh Python.

2. Tạo hình ảnh Python trong Power BI Desktop

  1. Chọn biểu tượng Python visual trong ngăn Visualizations.
python
  1. Trong hộp thoại Enable script visuals xuất hiện, hãy chọn Enable.

Khi bạn thêm hình ảnh Python vào báo cáo, Power BI Desktop sẽ thực hiện các hành động sau:

  • Hình ảnh trực quan Python giữ chỗ xuất hiện trên báo cáo canvas.
  • Python script editor xuất hiện ở cuối ngăn trung tâm.
python
  1. Tiếp theo, kéo các trường Age, Children, Fname, Gender, Pets, State, và Weight vào phần Values có ghi Add data fields here.
python

Tập lệnh Python của bạn chỉ có thể sử dụng các trường được thêm vào phần Values. Bạn có thể thêm hoặc xóa các trường khỏi phần Values khi làm việc trên tập lệnh Python của mình. Power BI Desktop tự động phát hiện các thay đổi của trường.

  1. Bây giờ bạn có thể sử dụng dữ liệu bạn đã chọn để tạo biểu đồ.

Khi bạn chọn hoặc xóa các trường, mã hỗ trợ trong trình chỉnh sửa tập lệnh Python sẽ tự động được tạo hoặc xóa.

Dựa trên các lựa chọn của bạn, trình soạn thảo tập lệnh Python tạo mã ràng buộc sau.

  • Trình chỉnh sửa đã tạo một khung dữ liệu tập dữ liệu, với các trường bạn đã thêm.
  • Tổng hợp mặc định là: không tóm tắt .
  • Tương tự như hình ảnh bảng, các trường được nhóm lại và các hàng trùng lặp chỉ xuất hiện một lần.
python

Bạn có thể truy cập các cột trong tập dữ liệu bằng tên tương ứng của chúng. Ví dụ: bạn có thể viết mã dataset[“Age”]trong tập lệnh Python của mình để truy cập trường tuổi.

  1. Với khung dữ liệu được tạo tự động bởi các trường bạn đã chọn, bạn đã sẵn sàng viết một tập lệnh Python để vẽ đồ thị cho thiết bị mặc định của Python. Khi tập lệnh hoàn tất, hãy chọn Run từ thanh tiêu đề của Python script editor.

Power BI Desktop sẽ thay thế hình ảnh nếu xảy ra bất kỳ sự kiện nào sau đây:

  • Khi bạn chọn Run từ thanh tiêu đề.
  • Bất cứ khi nào có thay đổi dữ liệu, do làm mới, lọc hoặc đánh dấu dữ liệu

Khi bạn chạy tập lệnh Python dẫn đến lỗi, hình ảnh của nó không được vẽ và thông báo lỗi canvas xuất hiện. Để biết chi tiết về lỗi, hãy chọn See details từ thông báo.

Để có cái nhìn lớn hơn về trực quan hóa, bạn có thể thu nhỏ Python script editor.

Bây giờ hãy tạo một số hình ảnh.

3. Tạo một biểu đồ phân tán

Hãy tạo một biểu đồ phân tán để xem liệu có mối tương quan giữa tuổi và cân nặng hay không.

  1. Bên dưới Python script editor, hãy nhập mã này:

import matplotlib.pyplot as plt 

dataset.plot(kind=’scatter’, x=’Age’, y=’Weight’, color=’red’)

plt.show() 

Cửa sổ soạn thảo tập lệnh của bạn bây giờ trông như thế này:

python

Thư viện matplotlib được nhập để vẽ và tạo hình ảnh của chúng tôi.

  1. Khi bạn chọn nút Run tập lệnh, biểu đồ phân tán sau đây sẽ tạo trong hình ảnh trực quan Python giữ chỗ.
biểu đồ phân tán

4. Tạo biểu đồ đường có nhiều cột

Hãy tạo một biểu đồ đường cho mỗi người hiển thị số trẻ em và vật nuôi của họ. Xóa hoặc nhận xét mã trong Paste or type your script code here và nhập mã này:

import matplotlib.pyplot as plt 

ax = plt.gca() 

dataset.plot(kind=’line’,x=’Fname’,y=’Children’,ax=ax) 

dataset.plot(kind=’line’,x=’Fname’,y=’Pets’, color=’red’, ax=ax) 

plt.show() 

Khi bạn chọn nút Run tập lệnh, biểu đồ dòng sau có nhiều cột sẽ được tạo.

biểu đồ dòng

Xem thêm: Các Loại Hình Ảnh Trực Quan Hóa (Biểu Đồ) Trong Power BI Phần 1

5. Tạo một biểu đồ thanh

Hãy tạo một biểu đồ thanh cho tuổi của mỗi người. Xóa hoặc nhận xét mã trong Paste or type your script code here và nhập mã này:

import matplotlib.pyplot as plt 

dataset.plot(kind=’bar’,x=’Fname’,y=’Age’) 

plt.show() 

Khi bạn chọn nút Run tập lệnh, biểu đồ thanh sau sẽ tạo:

biểu đồ thanh

6. Thông tin thêm về vẽ đồ thị với Matplotlib, Pandas và Python

Hướng dẫn này được thiết kế để giúp bạn bắt đầu tạo hình ảnh bằng Python trong Power BI Desktop. Nó hầu như không làm trầy xước bề mặt về nhiều tùy chọn và khả năng tạo báo cáo trực quan bằng Python, Pandas và thư viện Matplotlib. Có rất nhiều thông tin ngoài kia, và đây là một vài liên kết để giúp bạn bắt đầu.

  • Tài liệu tại trang web Matplotlib .
  • Hướng dẫn Matplotlib: Hướng dẫn cơ bản để sử dụng Matplotlib với Python
  • Hướng dẫn Matplotlib – Thư viện Matplotlib Python với các ví dụ
  • Tham chiếu API Pandas
  • Trực quan hóa Python trong  Power BI service
  • Sử dụng Python Visuals trong Power BI

7. Cấp phép

Hình ảnh Python yêu cầu giấy phép Power BI Pro hoặc Premium Per User (PPU) để hiển thị trong báo cáo, làm mới, lọc và lọc chéo. Để biết thêm thông tin về giấy phép Power BI Pro và chúng khác với giấy phép miễn phí như thế nào, hãy xem nội dung Power BI Pro – nó là gì?

Người dùng Power BI miễn phí chỉ có thể sử dụng các ô được chia sẻ với họ trong không gian làm việc Premium. Xem mua Power BI Pro để biết thêm thông tin.

Bảng sau đây mô tả các khả năng của hình ảnh Python dựa trên giấy phép.

Tác giả hình ảnh Python trong Power BI DesktopTạo báo cáo dịch vụ PBI bằng hình ảnh PythonXem hình ảnh Python trong báo cáo
Khách (được nhúng Power BI)Được hỗ trợKhông được hỗ trợChỉ được hỗ trợ trong dung lượng Premium/Azure
Đối tượng thuê không được quản lý (miền chưa được xác minh)Được hỗ trợKhông được hỗ trợKhông được hỗ trợ
Đối tượng thuê được quản lý với giấy phép miễn phíĐược hỗ trợKhông được hỗ trợChỉ được hỗ trợ trong dung lượng Cao cấp
Đối tượng thuê được quản lý có giấy phép Pro hoặc PPUĐược hỗ trợĐược hỗ trợĐược hỗ trợ

8. Hạn chế đã biết

Hình ảnh Python trong Power BI Desktop có một số hạn chế:

  • Giới hạn kích thước dữ liệu. Dữ liệu được sử dụng bởi hình ảnh để vẽ biểu đồ được giới hạn ở 150.000 hàng. Nếu hơn 150.000 hàng được chọn, chỉ 150.000 hàng trên cùng được sử dụng và một thông báo sẽ hiển thị trên hình ảnh. Ngoài ra, dữ liệu đầu vào có giới hạn là 250 MB.
  • Nếu tập dữ liệu đầu vào của Python Visual có một cột chứa giá trị chuỗi dài hơn 32766 ký tự, thì giá trị đó sẽ bị cắt bớt.
  • Nghị quyết. Tất cả hình ảnh được hiển thị ở 72 DPI.
  • Giới hạn thời gian tính toán. Nếu một phép tính trực quan Python vượt quá năm phút thì thời gian thực thi sẽ hết và dẫn đến lỗi.
  • Các mối quan hệ. Cũng như các hình ảnh Power BI Desktop khác, nếu các trường dữ liệu từ các bảng khác nhau không có mối quan hệ xác định giữa chúng được chọn, thì sẽ xảy ra lỗi.
  • Hình ảnh Python được làm mới khi cập nhật, lọc và đánh dấu dữ liệu. Tuy nhiên, bản thân hình ảnh không tương tác và không thể là nguồn lọc chéo.
  • Hình ảnh Python phản hồi để làm nổi bật các hình ảnh khác, nhưng bạn không thể nhấp vào các phần tử trong hình ảnh của nó để lọc chéo các phần tử khác.
  • Chỉ các ô được vẽ trên thiết bị hiển thị mặc định của Python mới được hiển thị chính xác trên canvas. Tránh sử dụng rõ ràng một thiết bị hiển thị Python khác.
  • Hình ảnh không hỗ trợ đổi tên cột đầu vào. Các cột sẽ được gọi bằng tên ban đầu của chúng trong quá trình thực thi tập lệnh.

Trên đây là những thông tin cần thiết để biết tạo hình ảnh Power Bi bằng cách sử dụng Python. Để tìm hiểu thêm về Power BI Desktop, các bạn có thể tham khảo series Power BI Desktop tại Mastering Data Analytics. Cảm ơn các bạn đã đọc bài!

Xem thông tin khai giảng Khóa học Business Intelligence sớm nhất tại Mastering Data Analytics. Với mọi thắc mắc xin liên hệ hotline 0961 48 66 48 hoặc inbox Fanpage Mastering Data Analytics để đăng ký nhanh nhất nhé!