Lewati ke konten utama

Bagan Pai Python: Membangun dan Mempercantik dengan Pandas dan Matplotlib

Pelajari cara membuat dan meningkatkan bagan pai menggunakan pustaka Matplotlib dan Pandas di Python. Temukan contoh kode praktis dan tips desain penting untuk membuat visual yang jelas dan mudah dibaca.
Diperbarui 28 Sep 2026  · 7 mnt Baca

Jelajahi bersama AI

ChatGPTClaudePerplexity

Bagan pai adalah salah satu plot paling populer untuk memvisualisasikan proporsi. Anda mungkin sudah mengenalnya, tetapi jika belum, bayangkan saja sebuah pai besar, atau keju Swiss bundar, yang dipotong menjadi irisan dengan ukuran berbeda. 

Python menawarkan beberapa cara untuk membuat bagan pai. Dalam tutorial ini, kita akan fokus pada cara membuat bagan pai di Python menggunakan Matplotlib dan Pandas, dua paket analisis data paling populer di Python. Kami akan menyusun artikel berdasarkan metode, sehingga Anda dapat fokus pada pendekatan dan sintaks yang paling sesuai dengan alur kerja Anda. 

Selain metode-metode ini, kami juga akan memberikan beberapa tips untuk meningkatkan pemecahan masalah, aksesibilitas, dan kegunaan bagan pai. Terakhir, kami juga akan mempertimbangkan alternatif bagan lain yang mungkin lebih sesuai daripada bagan pai dalam situasi tertentu.

Cara Membuat Bagan Pai di Python 

Saya akan menunjukkan dua cara berbeda untuk membuat bagan pai Python, dan Anda bisa memutuskan sendiri metode mana yang Anda sukai. Keduanya populer dan merupakan opsi yang baik, jadi Anda tidak akan salah pilih. 

Metode 1: Bagan pai dengan Matplotlib

Mari mulai menganalisis cara membuat bagan pai dengan Matplotlib. 

Untuk bagian ini, kita akan menganalisis data tentang berbagai kursus yang tersedia di katalog kursus DataCamp, yang dapat Anda temukan di sini. (Saya menelusuri katalog dan menghitung jumlah kursus yang tersedia di setiap teknologi dan membuat tabel dengan informasi ini.)

Cara membuat bagan

Untuk membuat bagan pai pertama kita dengan Matplotlib, kita dapat menggunakan fungsi plt.pie(). Kita akan menggunakan daftar jumlah kursus yang tersedia untuk berbagai teknologi data dan AI (masing-masing mewakili ukuran irisan), serta daftar kedua yang berisi nama teknologi, yang akan disertakan di bagan menggunakan parameter labels . Sebagai alternatif, kita dapat menggunakan plt.legend() untuk menambahkan legenda terpisah.

Seperti biasa, jangan lupa menjalankan plt.show() di akhir kode Anda agar plot Matplotlib ditampilkan dengan benar.

import pandas as pd
import matplotlib.pyplot as plt

courses = [164, 127, 31, 31,12, 11]
labels = ['Python','R','SQL','Power BI','Excel','ChatGPT']
dictionary = {'courses':courses, 'labels':labels}
python_pie_chart_df = pd.DataFrame(dictionary)

plt.pie(x = python_pie_chart_df.courses, labels = python_pie_chart_df.labels)
plt.show()

bagan pai Python dasar dengan legenda

plt.pie(x = python_pie_chart_df.courses)
plt.legend(labels = python_pie_chart_df.labels, loc = [0.95,0.35])
plt.show()

bagan pai Python dasar

Selain itu, kita juga dapat menyertakan persentase setiap irisan menggunakan parameter autopct. Pada contoh berikut, kita menampilkan ukuran irisan dengan satu desimal.

plt.pie(x = python_pie_chart_df.courses, labels = python_pie_chart_df.labels, autopct='%1.1f%%') 
plt.show()

bagan pai Python dengan label

Cara menyesuaikan bagan

Bagan pai di Matplotlib, serta irisan yang menyusunnya, sangat mudah dikustomisasi. Mari kita lihat beberapa opsi yang ditawarkan fungsi pie.plot(). 

Untuk mengubah warna irisan, kita dapat menggunakan parameter colors. Kita akan menggunakan parameter ini untuk menerapkan palet warna DataCamp pada bagan kita. 

datacamp_palette = ['#03ef62','#06bdfc','#ff6ea9','#ff931e','#ff5400','#7933ff']
plt.pie(x = python_pie_chart_df.courses, labels = python_pie_chart_df.labels, colors = datacamp_palette, autopct='%1.1f%%')
plt.show()

bagan pai Python dengan palet warna kustom

Jauh lebih baik, bukan? Namun masih banyak lagi yang bisa kita lakukan untuk menyesuaikan bagan pai. Misalnya, kita bisa mengatur jarak label dan persentase, menggunakan parameter labeldistance dan pctdistance, serta memilih sudut awal pemotongan dengan parameter startangle.

plt.pie(x = python_pie_chart_df.courses, labels = python_pie_chart_df.labels, colors = datacamp_palette, autopct='%1.1f%%', 
pctdistance= 0.8, labeldistance=1.1, startangle=180)

plt.show()

Terakhir, bayangkan Anda sedang melakukan presentasi dan ingin berfokus pada kursus R. Cara praktis untuk menyorotnya adalah dengan meledakkan irisan tersebut menggunakan parameter explode, seperti berikut:

explode = (0, 0.1, 0, 0, 0, 0)  # hanya "meledakkan" irisan ke-2 (yaitu 'R')

plt.pie(x = python_pie_chart_df.courses, labels = python_pie_chart_df.labels, 
        colors = datacamp_palette, autopct='%1.1f%%', 
        pctdistance= 0.8, labeldistance=1.1, 
        startangle=180, explode=explode)

plt.show()

Cara menyimpan bagan

Setelah Anda membuat bagan pai, Anda siap membagikannya dengan rekan kerja. Anda dapat melakukannya menggunakan fungsi plt.savefig() yang menerima nama file sebagai masukan dan memungkinkan Anda menyimpannya dalam berbagai format, seperti .png, .jpg, .svg, atau .pdf. Selain itu, Anda dapat menggunakan dpi untuk mengubah resolusi gambar. 

Berikut adalah contoh cara menyimpan plot pai Anda dalam format .jpg dengan 200 dots per inch.

plt.pie(x = df.courses, labels = df.labels, 
        colors = datacamp_palette, autopct='%1.1f%%', 
        pctdistance= 0.8, labeldistance=1.1, 
        startangle=180, explode=explode)

plt.savefig('demo.jpg', dpi =200)

Anda dapat mempelajari lebih lanjut tentang cara menyimpan visualisasi dengan benar di kursus kami Introduction to Data Visualization with Matplotlib.

Metode 2: Bagan pai dengan Pandas

Sekarang setelah Anda tahu cara membuat bagan pai dengan Matplotlib, mari lihat cara kerjanya di Pandas.

Cara membuat bagan

Pandas memiliki metode plot() yang dapat digunakan untuk menggambar beberapa jenis plot. Metode ini bekerja pada objek DataFrame dan Series di Pandas. Argumen kind dalam metode plot() dapat membantu Anda menentukan jenis plot. Dalam kasus kita, Anda dapat membuat bagan pai menggunakan kind ='pie'. Anda juga dapat menambahkan parameter labels untuk menyertakan nama pada setiap irisan dan parameter autopct untuk menambahkan persentase setiap irisan.

python_pie_chart_df['courses'].plot(kind='pie', labels=python_pie_chart_df['labels'], autopct='%1.1f%%')
plt.show()

Cara menyesuaikan bagan

Metode plot() milik Pandas menyediakan alat untuk plotting cepat tetapi dengan opsi kustomisasi yang terbatas. Untungnya, metode ini menggunakan Matplotlib sebagai backend, artinya Anda dapat menggunakan sintaks Matplotlib di luar metode untuk menyesuaikan visualisasi. Di bawah ini, Anda dapat menemukan contoh cara menggabungkan Pandas dan Matplotlib.

ax= python_pie_chart_df['courses'].plot(kind='pie', labels=python_pie_chart_df['labels'], autopct='%1.1f%%', 
                       colors=datacamp_palette, figsize=(5,5))

ax.set_title('Pie Chart DatataCamp Courses')
ax.set_ylabel(None)

plt.show()

Cara menyimpan bagan

Menyimpan bagan pai di Pandas sama persis seperti di Matplotlib, karena Pandas bergantung pada Matplotlib di balik layar.

ax= python_pie_chart_df['courses'].plot(kind='pie', labels=python_pie_chart_df['labels'], autopct='%1.1f%%', 
                       colors=datacamp_palette, figsize=(5,5))

ax.set_title('Pie Chart DatataCamp Courses')
ax.set_ylabel(None)

plt.savefig('demo.png')

Pemecahan Masalah Bagan Pai

Agar bagan pai Anda ditampilkan dengan benar, Anda harus memberikan data yang tepat kepada Matplotlib. Artinya, Anda sebaiknya selalu melakukan teknik pembersihan data pada dataframe Anda, seperti menghapus nilai null dengan pd.dropna() dan menetapkan tipe data yang benar untuk kolom masukan Anda.

Selain itu, kustomisasi akan menjadi kunci untuk menampilkan bagan pai yang menarik dan berdampak. Namun, perlu diingat bahwa jika Anda menggunakan Pandas, kustomisasi tingkat lanjut seperti explode mungkin tidak didukung. Seperti telah disebutkan, jika Anda memerlukan kontrol lebih atas bagan pai, Anda mungkin perlu menambahkan kode Matplotlib ke skrip Anda.

Meningkatkan Aksesibilitas dan Kegunaan

Saat menampilkan bagan pai Anda, Anda harus berpegang pada praktik yang baik.

  • Kenali audiens Anda: Sebagai aturan emas, Anda harus selalu berempati dengan audiens yang dituju visualisasi Anda. Ini berarti memiliki pemahaman yang baik tentang bidang keahlian, tingkat pengetahuan teknis, dan minat audiens Anda. 
  • Hilangkan kekacauan: Untuk menghindari visualisasi yang tidak terbaca dan berantakan, tanyakan pada diri sendiri apakah yang Anda sertakan relevan bagi audiens, dan hilangkan elemen yang tidak perlu sebanyak mungkin. Dalam kasus bagan pai, Anda sebaiknya menghindari efek 3D atau bayangan karena dapat menghambat interpretasi. 
  • Perhatikan font: Meskipun menggoda untuk menggunakan berbagai font dan ukuran, sebagai pedoman umum, gunakan satu font dengan tidak lebih dari tiga ukuran. Anda harus mengikuti hierarki font dan menjaga judul lebih besar daripada isi, serta menggunakan tipe huruf tebal untuk menyorot elemen kunci dan judul. 
  • Gunakan warna secara kreatif: Warna adalah salah satu aspek paling mencolok dari visualisasi data apa pun. Karena itu, pikirkan matang-matang saat memilih skema warna untuk visualisasi data Anda. Ini berarti memiliki palet warna yang konsisten di seluruh visualisasi Anda dan menggunakan warna secara sistematis untuk membedakan antar kelompok, tingkat kepentingan, dan berbagai jenis hierarki informasi.
  • Uji di perangkat lain: Selalu merupakan saran yang baik untuk menguji visual Anda guna melihat tampilannya di berbagai perangkat.

Visualisasi data bisa dianggap sebagai seni. Intuisi dan selera yang baik dapat membuat perbedaan, tetapi Anda juga harus mempertimbangkan teori di baliknya. Untuk mengetahui lebih lanjut praktik terbaik untuk visualisasi data yang efektif, lihat Data Storytelling & Communication Cheat Sheet kami. Selain itu, jika Anda bekerja dengan dasbor, artikel tentang Praktik Terbaik untuk Merancang Dasbor ini layak dibaca.

Alternatif Bagan Pai

Sejujurnya, bagan pai termasuk plot yang paling banyak dikritik. Telah dibuktikan bahwa manusia tidak terlalu mahir menafsirkan sudut. Kita bisa mengilustrasikannya dengan bagan pai yang telah kita gunakan sebelumnya. Perhatikan irisan Excel dan ChatGPT. Bisakah Anda langsung melihat mana yang memiliki sudut lebih besar?

Mungkin tidak, dan itulah mengapa banyak pakar visualisasi data merekomendasikan menggunakan bagan lain untuk menggambarkan proporsi, terutama saat berurusan dengan banyak kategori, seperti bagan batang dan bagan batang bertumpuk, treemap, atau bahkan bagan donat. Anda dapat mempelajari lebih lanjut alternatif ini di artikel kami Types of Data Plots and How to Create Them in Python.

Kesimpulan

Selamat telah mencapai akhir tutorial. Python adalah bahasa pemrograman yang sangat serbaguna, menawarkan beberapa pustaka dan pendekatan untuk membuat bagan pai. Dalam tutorial ini, kita menganalisis cara membuat bagan pai dengan Matplotlib dan Pandas. Keduanya sama-sama cocok untuk pekerjaan ini dan memiliki kesamaan yang menonjol. Idenya bukan memilih salah satu, melainkan menggunakannya secara bergantian sesuai kebutuhan dan alur kerja Anda. 

Jika Anda ingin mengetahui lebih banyak tentang bagan pai dan, secara lebih luas, visualisasi data di Python, DataCamp siap membantu. Lihat materi khusus kami dan bersiaplah menjadi ahli visualisasi!


Javier Canales Luna's photo
Author
Javier Canales Luna
LinkedIn

Saya adalah analis data lepas yang berkolaborasi dengan perusahaan dan organisasi di seluruh dunia dalam proyek ilmu data. Saya juga instruktur ilmu data dengan pengalaman lebih dari 2 tahun. Saya rutin menulis artikel terkait ilmu data dalam bahasa Inggris dan Spanyol, beberapa di antaranya telah diterbitkan di situs tepercaya seperti DataCamp, Towards Data Science, dan Analytics Vidhya. Sebagai ilmuwan data dengan latar belakang ilmu politik dan hukum, tujuan saya adalah bekerja pada irisan kebijakan publik, hukum, dan teknologi, memanfaatkan kekuatan gagasan untuk mendorong solusi serta narasi inovatif yang dapat membantu kita menghadapi tantangan mendesak, khususnya krisis iklim. Saya menganggap diri saya seorang autodidak, pembelajar sepanjang hayat, dan pendukung kuat pendekatan multidisipliner. Tidak pernah ada kata terlambat untuk mempelajari hal baru.

FAQ

Apa itu bagan pai, dan kapan sebaiknya saya menggunakannya?

Bagan pai adalah jenis grafik di mana sebuah lingkaran dibagi menjadi beberapa sektor yang masing-masing mewakili proporsi terhadap keseluruhan. Karena itu, bagan ini cocok untuk merepresentasikan proporsi.

Bagaimana cara membuat bagan pai di Matplotlib?

Cara termudah membuat bagan pai dengan Matplotlib adalah menggunakan fungsi plt.pie(), yang dilengkapi berbagai parameter kustomisasi.

Bagaimana cara membuat bagan pai di Pandas?

Cara termudah membuat bagan pai dengan Matplotlib adalah menggunakan metode Series.plot.(kind=’pie’). Metode ini memungkinkan visualisasi cepat pada DataFrame Pandas, tetapi opsi kustomisasinya terbatas dibandingkan Matplotlib.

Apa praktik terbaik saat membuat bagan pai?

Anda harus selalu mengikuti praktik terbaik saat membuat visualisasi. Itu mencakup menjaga bagan pai sesederhana mungkin, menghindari elemen yang tidak diperlukan, memilih palet warna yang intuitif, dan menyesuaikan plot sesuai audiens Anda.

Apa keterbatasan utama bagan pai?

Manusia tidak terlalu mahir menafsirkan sudut; itulah mengapa banyak pakar visualisasi merekomendasikan menggunakan bagan lain untuk memvisualisasikan proporsi, seperti bagan batang.

Topik
Python
Analisis Data

Belajar bersama DataCamp

Kursus

Memahami Ilmu Data

2 jam
875.4K
Pengantar data science tanpa keterlibatan coding.
Lihat DetailRight Arrow
Mulai Kursus
Lihat SelengkapnyaRight Arrow
Terkait

blogs

Spaghetti Plot dan Jalur Badai

Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Hugo Bowne-Anderson's photo

Hugo Bowne-Anderson

13 mnt

blogs

Tutorial Korelasi di R

Dapatkan pengenalan dasar-dasar korelasi di R: pelajari lebih lanjut tentang koefisien korelasi, matriks korelasi, plotting korelasi, dan sebagainya.
David Woods's photo

David Woods

13 mnt

blogs

40 Pertanyaan Wawancara DBMS Teratas di 2026

Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Dario Radečić's photo

Dario Radečić

15 mnt

blogs

12 Alternatif ChatGPT Terbaik yang Bisa Anda Coba pada 2026

Artikel ini menyajikan daftar alternatif ChatGPT yang akan meningkatkan produktivitas Anda.
Javier Canales Luna's photo

Javier Canales Luna

14 mnt

Lihat SelengkapnyaLihat Selengkapnya