Để biết thông tin về tình trạng sẵn sàng, hãy xem tình trạng sẵn có của Python trong Excel. Nếu bạn gặp bất kỳ thắc mắc nào về Python trong Excel, vui lòng báo cáo bằng cách chọn Trợ giúp>Phản hồi trong Excel.
Bạn mới làm quen với Python trong Excel? Bắt đầu với Giới thiệu về Python trong Excel và Bắt đầu với Python trong Excel.
Sử dụng thư viện Python nguồn mở để tạo sơ đồ và biểu đồ
Python trong Excel đi kèm với một tập hợp cốt lõi gồm các thư viện Python do Anaconda cung cấp. Bài viết này mô tả cách sử dụng các thư viện Python, chẳng hạn như seaborn và Matplotlib, để tạo các sơ đồ và biểu đồ. Để tìm hiểu thêm về các thư viện nguồn mở sẵn dùng với Python trong Excel, hãy xem Thư viện nguồn mở và Python trong Excel.
Các ví dụ trong bài viết này sử dụng tập dữ liệu hoa Diên vĩ. Tải xuống sổ làm việc mẫu này để theo dõi bài viết: python-in-excel-iris-dataset.xlsx.
Tạo một cốt truyện cặp với seaborn
Ví dụ này cho thấy cách tạo trực quan hóa biểu đồ cặp của tập dữ liệu hoa Diên Vĩ. Biểu đồ cặp là ma trận gồm các biểu đồ và biểu đồ so sánh mối quan hệ giữa mỗi biến số trong tập dữ liệu. Trong trường hợp này, tập dữ liệu hoa Diên vĩ chứa bốn cột dữ liệu số: sepal_length, sepal_width, petal_length và petal_width.
Python trong Excel tạo trực quan hóa bằng thư viện seaborn . Thư viện seaborn được tự động nhập cho Python trong Excel với câu lệnh nhập sau đây, cho phép bạn tham chiếu thư viện này với biệt danh sns.
import seaborn as sns
Để tạo một biểu đồ cặp của tập dữ liệu hoa diên vĩ với thư viện seaborn, hãy thực hiện các bước sau đây:
Nhập đoạn mã sau vào Python trong ô Excel. Đoạn mã lưu trữ biểu đồ cặp dưới dạng một biến được gọi là biểu đồ cặp. Nó tạo biểu đồ cặp với bí danh thư viện seaborn sns và hàm seaborn pairplot.
pairplot = sns.pairplot(xl("Table1[#All]", headers=True))Là đối số cho hàm pairplot , đoạn mã sử dụng hàm Python tùy chỉnh xl() và tham chiếu đến bảng đầu tiên trong trang tính, Table1. Nó bao gồm toàn bộ nội dung bảng (như [#All]) và lưu ý rằng bảng có một hàng tiêu đề (như tiêu đề=True). Trong ví dụ này, Bảng_1 trong trang tính chứa tập dữ liệu Iris.
Lưu ý
Nếu bạn gặp bất kỳ lỗi nào, hãy xem Khắc phục lỗi Python trong Excel để biết thêm thông tin.
Sau khi xác nhận công thức Python của bạn, Python trong Excel trả về trực quan hóa biểu đồ cặp trong một đối tượng hình ảnh. Chọn biểu tượng thẻ trong ô đối tượng hình ảnh để xem bản xem trước của trực quan hóa.
Giữ trực quan hóa dưới dạng đối tượng Hình ảnh để tiếp tục sử dụng cho các tính toán Python. Trích xuất hình ảnh vào lưới Excel để thay đổi kích cỡ ảnh và xem từng sơ đồ chi tiết hơn. Để trích xuất hình ảnh vào lưới, hãy bấm chuột phải hoặc Ctrl+bấm vào ô có chứa đối tượng hình ảnh và chọn Hiển thị Vẽ trên các ô từ menu.
Để biết thêm thông tin về việc trích xuất đối tượng hình ảnh, hãy xem mục bài viết Trích xuất đối tượng hình ảnh vào lưới Excel trong bài viết này.
Tạo biểu đồ tán xạ bằng Matplotlib
Ví dụ này mô tả cách tạo biểu đồ tán xạ với tập dữ liệu mẫu hoa Diiris. Biểu đồ tán xạ hiển thị mối quan hệ giữa hai biến số trong một tập dữ liệu. Ví dụ này tạo một biểu đồ tán xạ trông giống như ảnh chụp màn hình sau đây, so sánh các giá trị sepal_width và sepal_length .
Python trong Excel tạo trực quan hóa bằng thư viện mã nguồn mở Matplotlib . Thư viện Matplotlib được tự động nhập cho Python trong Excel với câu lệnh nhập sau đây, cho phép bạn tham chiếu nó dưới dạng plt.
import matplotlib.pyplot as plt
Để tạo một biểu đồ tán xạ của tập dữ liệu hoa Diên vĩ bằng thư viện Matplotlib, hãy thực hiện các bước sau đây:
Trong ô Python trong Excel, hãy sử dụng hàm tán xạ Matplotlib và nhập cột sepal_length và sepal_width của tập dữ liệu Mống mắt làm đối số. Trong ví dụ này, Bảng_1 trong trang tính chứa tập dữ liệu Iris.
plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))Thêm nhãn và tiêu đề vào biểu đồ tán xạ.
# Label the x and y axes of the plot.
plt.xlabel('sepal_length')
plt.ylabel('sepal_width')# Add a title to the plot.
plt.title('Sepal length and width analysis')Lưu ý
Bạn có thể thêm đoạn mã này dưới dạng một dòng mã bổ sung sau công thức Python ở bước trước, trong cùng một ô Excel hoặc bạn có thể nhập đoạn mã vào ô Python mới trong Excel trong sổ làm việc của mình. Nếu bạn chọn nhập ô mới, hãy đảm bảo tuân theo các quy tắc thứ tự của tính toán hàng chính và nhập nó sau ô đầu tiên.
Sau khi xác nhận các công thức Python của bạn, Python trong Excel trả về trực quan hóa biểu đồ tán xạ dưới dạng đối tượng hình ảnh. Chọn biểu tượng thẻ trong ô đối tượng hình ảnh để xem bản xem trước của trực quan hóa.
Lưu ý
Nếu bạn gặp bất kỳ lỗi nào, hãy xem Khắc phục lỗi Python trong Excel để biết thêm thông tin.
Giữ trực quan hóa dưới dạng đối tượng hình ảnh để tiếp tục sử dụng nó cho các tính toán Python. Trích xuất hình ảnh vào lưới Excel để thay đổi kích cỡ ảnh và xem sơ đồ chi tiết hơn. Để trích xuất hình ảnh vào lưới, hãy bấm chuột phải hoặc Ctrl+bấm vào ô có chứa đối tượng hình ảnh và chọn Hiển thị Vẽ trên các ô từ menu.
Để biết thêm thông tin về việc trích xuất đối tượng hình ảnh, hãy xem mục bài viết Trích xuất đối tượng hình ảnh vào lưới Excel trong bài viết này.
Trích xuất một đối tượng hình ảnh vào lưới Excel
Như đã minh họa qua các ví dụ trong bài viết này, các thư viện Python như seaborn và Matplotlib có thể trả về trực quan hóa dữ liệu cho các ô Excel. Theo mặc định, Python trong Excel trả về các trực quan hóa này dưới dạng đối tượng hình ảnh.
Chọn biểu tượng thẻ trong ô đối tượng hình ảnh để xem bản xem trước của trực quan hóa.
Có hai cách để trích xuất một ảnh từ lưới Excel: hiển thị ảnh dưới dạng biểu đồ trên các ô hoặc hiển thị ảnh bên trong một ô.
Hiển thị hình ảnh trên các ô
Hãy làm theo các bước sau để hiển thị ảnh dưới dạng vẽ trên các ô.
Bấm chuột phải hoặc Ctrl+bấm vào ô có chứa đối tượng hình ảnh và chọn Hiển thị Vẽ trên Ô từ menu (hoặc dùng phím tắt Ctrl+Alt+Shift+C). Thao tác này sẽ tạo một bản sao của hình ảnh nổi trên lưới Excel và có thể dễ dàng đổi kích cỡ. Đối tượng hình ảnh gốc vẫn ở trong ô ban đầu.
Chọn và kéo hình vẽ để di chuyển nó quanh trang tính của bạn. Chọn và kéo nút ở các góc và cạnh của hình ảnh để đổi kích cỡ hình ảnh.
Hiển thị hình ảnh trong một ô
Làm theo các bước này để hiển thị hình ảnh trong một ô.
Trả đối tượng hình ảnh dưới dạng giá trị Excel. Chọn ô đối tượng hình ảnh, đi tới menu đầu ra Python trong thanh công thức và chọn Giá trị Excel.
Ảnh vẽ bây giờ hiển thị bên trong ô.
Mẹo
Để chuyển đổi kết quả công thức Python giữa các đối tượng Python và giá trị Excel, hãy sử dụng phím tắt Ctrl+Alt+Shift+M. Để tìm hiểu thêm về phím tắt, hãy xem Python trong các phím tắt của Excel.
Kích cỡ của ảnh vẽ phụ thuộc vào kích cỡ của ô. Tăng kích thước hình ảnh bằng cách tăng kích cỡ ô hoặc phối ô.
Sử dụng các phông chữ khác nhau cho ngôn ngữ không phải tiếng Anh
Để lập biểu đồ dữ liệu sử dụng các ký tự không thuộc bảng chữ cái Latinh, chẳng hạn như tiếng Trung, tiếng Hàn hoặc tiếng Thái, hãy sử dụng excel.FontPath. Theo mặc định, Python trong Excel kết xuất các ký tự bảng chữ cái không phải tiếng La-tinh thành một hình vuông trống ('□'). Để giải quyết vấn đề này, excel.FontPath cho phép bạn sử dụng excel mô-đun để gọi một phông chữ khác và kết xuất các ký tự.
Các phông chữ sau đây là khả dụng. Thuộc tính được gắn thêm vào excel.FontPath trong mã Python của bạn. Đường dẫn tham chiếu đến tệp phông được gọi bởi thuộc tính.
| Thuộc tính | Đường dẫn |
|---|---|
| TIẾNG BENGALI | /usr/share/fonts/Vrinda.ttf |
| CHINESE_SIMPLIFIED | /usr/share/fonts/SimSun.ttf |
| CHINESE_TRADITIONAL | /usr/share/fonts/MingLiU.ttf |
| TIẾNG HINDI | /usr/share/fonts/Mangal.ttf |
| TIẾNG NHẬT | /usr/share/fonts/Meiryo.ttf |
| TIẾNG HÀN | /usr/share/fonts/Batang.ttf |
| TIẾNG THÁI | /usr/share/fonts/THSarabunPSK.ttf |
Sử dụng Excel. FontPath để hiển thị nhãn vẽ tiếng Trung giản thể
Ảnh chụp màn hình sau đây hiển thị biểu đồ có nhãn vẽ bằng ký tự tiếng Trung giản thể bằng cách sử dụng excel.FontPath. Ví dụ về mã sau ảnh chụp màn hình sẽ giải thích cách dùng để excel.FontPath.CHINESE_SIMPLIFIED hiển thị các ký tự từ thư viện tiếng Trung giản thể.
Ví dụ về mã dùng Excel. FontPath
Ví dụ về mã này cho thấy cách sử dụng excel.FontPath.CHINESE_SIMPLIFIED để tạo cốt truyện và các ký tự tiếng Trung giản thể trong nhãn biểu đồ hiển thị trong ảnh chụp màn hình trước đó.
-
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
# Set the font path. This returns '/usr/share/fonts/simsun.ttf'.
font_path = excel.FontPath.CHINESE_SIMPLIFIED
# Point the properties to the font path.
font_properties = FontProperties(fname=font_path)
plt.rcParams['font.family'] = font_properties.get_name()
# Make the plot.
myplot = pd.DataFrame({'欧文': [1,2,3], '比尔': [1,2,3]}).plot(x='欧文')
# Show the plot.
plt.show()