Membuat Python di Petak dan Bagan Excel
Applies To
Excel untuk Microsoft 365Python di Excel kini tersedia untuk pengguna Perusahaan dan Bisnis yang menjalankan Saluran Saat Ini di Windows, dimulai dengan Versi 2407 (Build 17830.20128), dan Saluran Perusahaan Bulanan di Windows, dimulai dengan Versi 2408 (Build 17928.20216). Fitur ini tersedia dalam pratinjau untuk pengguna Keluarga dan Pribadi yang menjalankan Saluran Saat Ini di Windows yang dimulai dengan Versi 2405 (Build 17628.20164). Python di Excel tersedia dalam pratinjau untuk pengguna Pendidikan yang menjalankan Saluran Saat Ini (Pratinjau) melalui Program Insider Microsoft 365. Saat ini tidak tersedia untuk saluran Semi-Annual Enterprise.
Ini diluncurkan ke Excel untuk Windows terlebih dahulu, lalu ke platform lain di kemudian hari. Untuk informasi ketersediaan selengkapnya, lihat Python di Ketersediaan Excel.
Jika Anda mengalami masalah dengan Python di Excel, silakan laporkan dengan memilih Bantuan > Umpan Balik di Excel.
Baru menggunakan Python di Excel? Mulai dengan Pengenalan Python di Excel dan Mulai menggunakan Python di Excel.
Menggunakan pustaka Python sumber terbuka untuk membuat petak dan bagan
Python di Excel dilengkapi dengan kumpulan inti pustaka Python yang disediakan oleh Anaconda. Artikel ini menguraikan cara menggunakan pustaka Python, seperti seaborndan matplotlib, untuk membuat plot dan bagan. Untuk mempelajari selengkapnya tentang pustaka sumber terbuka yang tersedia dengan Python di Excel, lihat Pustaka sumber terbuka dan Python di Excel.
Contoh dalam artikel ini menggunakan kumpulan data bunga Iris. Unduh contoh buku kerja ini untuk diikuti bersama dengan artikel: python-in-excel-iris-dataset.xlsx.
Buat plot pasangan dengan seaborn
Contoh ini memperlihatkan cara membuat visualisasi plot pasangan kumpulan data bunga Iris. Plot pasangan adalah matriks plot dan bagan yang membandingkan hubungan antara setiap variabel dalam kumpulan data. Dalam hal ini, kumpulan data bunga Iris berisi empat kolom data numerik: sepal_length, sepal_width, petal_length, dan petal_width.
Python di Excel membuat visualisasi dengan pustaka seaborn. Pustaka seabornsecara otomatis diimpor untuk Python di Excel dengan pernyataan impor berikut, memungkinkan Anda mereferensikannya dengan alias sns.
import seaborn as sns
Untuk membuat plot pasangan kumpulan data bunga Iris dengan pustaka seaborn, lakukan langkah-langkah berikut:
-
Masukkan snippet kode berikut dalam Python di sel Excel. Snippet kode menyimpan plot pasangan sebagai variabel yang disebut pairplot. Ini membuat plot pasangan dengan perpustakaan laut alias sns dan alur pasangan fungsi seaborn. pairplot = sns.pairplot(xl("Table1[#All]", headers=True)) Sebagai argumen untuk fungsi pairplot, snippet kode menggunakan fungsi Python kustom xl() dan mereferensikan tabel pertama dalam lembar kerja, Table1. Ini mencakup seluruh konten tabel (sebagai [#All]), dan catatan bahwa tabel menyertakan baris header (sebagai header=True). Dalam contoh ini, Table1 dalam lembar kerja berisi kumpulan data Iris.
Catatan: Jika Anda mengalami kesalahan, lihat Memecahkan masalah Python dalam kesalahan Excel untuk informasi selengkapnya.
-
Setelah melakukan rumus Python, Python di Excel mengembalikan visualisasi plot pasangan dalam objek gambar. Pilih ikon kartu di sel objek gambar untuk melihat pratinjau visualisasi.
-
Pertahankan visualisasi sebagai objek Gambar untuk terus menggunakannya untuk penghitungan Python. Ekstrak gambar ke kisi Excel untuk mengubah ukurannya dan menampilkan setiap plot secara lebih mendetail. Untuk mengekstrak gambar ke kisi, klik kanan atau Ctrl+klik pada sel yang berisi objek gambar dan pilih Tampilkan Plot di atas Sel dari menu.
Untuk informasi tambahan tentang mengekstrak objek gambar, lihat bagian Mengekstrak objek gambar ke artikel kisi Excel di artikel ini.
Membuat plot sebar dengan Matplotlib
Contoh ini menjelaskan cara membuat plot sebar dengan kumpulan data sampel bunga Iris. Plot sebar memperlihatkan hubungan antara dua variabel numerik dalam rangkaian data. Contoh membuat plot sebar yang terlihat seperti cuplikan layar berikut, membandingkan nilai sepal_width dan sepal_length .
Python di Excel membuat visualisasi dengan pustaka sumber terbuka Matplotlib. Pustaka Matplotlibsecara otomatis diimpor untuk Python di Excel dengan pernyataan impor berikut ini, memungkinkan Anda mereferensikannya sebagai plt.
import matplotlib.pyplot as plt
Untuk membuat plot sebar kumpulan data bunga Iris dengan pustaka Matplotlib, lakukan langkah-langkah berikut:
-
Dalam Python di sel Excel, gunakan fungsi sebarmatplotlib dan masukkan kolom sepal_length dan sepal_width kumpulan data Iris sebagai argumen. Dalam contoh ini, Table1 dalam lembar kerja berisi kumpulan data Iris.plt.scatter(xl("Table1[sepal_length]"), xl("Table1[sepal_width]"))
-
Tambahkan label dan judul ke plot sebar. # 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')
Catatan: Anda bisa menambahkan snippet kode ini sebagai baris kode tambahan setelah rumus Python di langkah sebelumnya, di sel Excel yang sama, atau Anda bisa memasukkannya di Python baru di sel Excel di buku kerja Anda. Jika Anda memilih untuk memasukkannya dalam sel baru, pastikan untuk mengikuti aturan urutan penghitungan baris-utama dan memasukkannya setelah sel pertama.
-
Setelah melakukan rumus Python, Python di Excel mengembalikan visualisasi plot sebar sebagai objek gambar. Pilih ikon kartu di sel objek gambar untuk melihat pratinjau visualisasi.
Catatan: Jika Anda mengalami kesalahan, lihat Memecahkan masalah Python dalam kesalahan Excel untuk informasi selengkapnya.
-
Pertahankan visualisasi sebagai objek gambar untuk terus menggunakannya untuk perhitungan Python. Ekstrak gambar ke kisi Excel untuk mengubah ukurannya dan menampilkan plot secara lebih mendetail. Untuk mengekstrak gambar ke kisi, klik kanan atau Ctrl+klik pada sel yang berisi objek gambar dan pilih Tampilkan Plot di atas Sel dari menu.
Untuk informasi tambahan tentang mengekstrak objek gambar, lihat bagian Mengekstrak objek gambar ke artikel kisi Excel di artikel ini.
Mengekstrak objek gambar ke kisi Excel
Seperti yang ditunjukkan oleh contoh dalam artikel ini, pustaka Python seperti seaborn dan Matplotlib dapat mengembalikan visualisasi data ke sel Excel. Secara default, Python di Excel mengembalikan visualisasi ini sebagai objek gambar.
Pilih ikon kartu dalam sel objek gambar untuk melihat pratinjau visualisasi.
Ada dua cara untuk mengekstrak gambar ke kisi Excel: menampilkan gambar sebagai plot di atas sel atau menampilkan gambar di dalam sel.
Menampilkan gambar di atas sel
Ikuti langkah-langkah ini untuk menampilkan gambar sebagai plot di atas sel.
-
Klik kanan atau Ctrl+klik pada sel yang berisi objek gambar dan pilih Tampilkan Plot di atas Sel dari menu (atau gunakan pintasan keyboard Ctrl+Alt+Shift+C). Tindakan ini akan membuat salinan gambar yang mengapung di atas kisi Excel dan dapat diubah ukurannya dengan mudah. Objek gambar asli tetap berada di sel asli.
-
Pilih dan seret gambar plot untuk memindahkannya di sekitar lembar kerja Anda. Pilih dan seret simpul di sudut dan sisi gambar untuk mengubah ukurannya.
Menampilkan gambar di dalam sel
Ikuti langkah-langkah ini untuk menampilkan gambar di dalam sel.
-
Mengembalikan objek gambar sebagai nilai Excel. Pilih sel objek gambar, masuk ke menu output Python di bilah rumus, lalu pilih Nilai Excel.
Gambar plot kini ditampilkan di dalam sel.Tips: Untuk mengalihkan hasil rumus Python antara objek Python dan nilai Excel, gunakan pintasan keyboard Ctrl+Alt+Shift+M. Untuk mempelajari selengkapnya tentang pintasan keyboard, lihat Python di Pintasan keyboard Excel.
-
Ukuran gambar plot bergantung pada ukuran sel. Perbesar ukuran gambar dengan memperbesar ukuran sel, atau dengan menggabungkan sel.
Membuat petak dan bagan Anda sendiri
Setelah mempelajari cara membuat Python di plpot dan bagan Excel dengan sampel kumpulan data, masukkan data Anda sendiri ke dalam buku kerja Excel dan buat visualisasi kustom.
Untuk mengimpor data eksternal untuk digunakan dengan Python di Excel, gunakan Power Query. Untuk mempelajari selengkapnya, lihat Menggunakan Power Query untuk mengimpor data untuk Python di Excel.
Menggunakan font yang berbeda untuk bahasa selain bahasa Inggris
Untuk membuat bagan data yang menggunakan karakter alfabet non-Latin, seperti Bahasa Tionghoa, Korea, atau Thailand, gunakan excel.FontPath. Secara default, Python di Excel menyajikan karakter alfabet non-Latin sebagai persegi kosong ('□'). Untuk mengatasi masalah ini, excel.FontPath memungkinkan Anda menggunakan modul excel untuk memanggil font lain dan menyajikan karakter.
Font berikut ini tersedia. Atribut ditambahkan ke excel.FontPath dalam kode Python Anda. Jalur merujuk ke file font yang dipanggil oleh atribut.
Atribut |
Jalur |
---|---|
BENGALI |
/usr/share/fonts/Vrinda.ttf |
CHINESE_SIMPLIFIED |
/usr/share/fonts/SimSun.ttf |
CHINESE_TRADITIONAL |
/usr/share/fonts/MingLiU.ttf |
HINDI |
/usr/share/fonts/Mangal.ttf |
JEPANG |
/usr/share/fonts/Meiryo.ttf |
KOREA |
/usr/share/fonts/Batang.ttf |
THAI |
/usr/share/fonts/THSarabunPSK.ttf |
melampaui. Contoh FontPath
Sebelum
Bagan ini tidak dapat menyajikan label plot yang tepat karena font default tidak mendukung karakter yang disediakan.
Sampel kode untuk label bagan yang dirender secara tidak benar:
import matplotlib.pyplot as plt # Make the plot. myplot = pd.DataFrame({'欧文': [1,2,3], '比尔': [1,2,3]}).plot(x='欧文') # Show the plot. plt.show() |
Setelah
Untuk memperbaiki label bagan dalam contoh ini, gunakan excel.FontPath.CHINESE_SIMPLIFIED untuk menyajikan karakter Bahasa Tionghoa yang disediakan dengan benar.
Sampel kode untuk label bagan yang dirender dengan benar:
import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties # Set the font path. # 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() |