Memvisualisasikan data

Selesai

Salah satu cara paling intuitif untuk menganalisis hasil kueri data adalah dengan memvisualisasikannya sebagai diagram. Notebook di Azure Databricks menyediakan kemampuan pembuatan bagan di antarmuka pengguna, dan ketika fungsionalitas tersebut tidak menyediakan apa yang Anda butuhkan, Anda bisa menggunakan salah satu dari banyak pustaka grafis Python untuk membuat dan menampilkan visualisasi data di buku catatan.

Menggunakan diagram notebook bawaan

Saat Anda menampilkan dataframe atau menjalankan kueri SQL di buku catatan Spark di Azure Databricks, hasilnya ditampilkan di bawah sel kode. Secara default, hasil dirender sebagai tabel, tetapi Anda juga bisa menampilkan hasilnya sebagai visualisasi dan menyesuaikan bagaimana bagan menampilkan data, seperti yang diperlihatkan di sini:

Cuplikan layar buku catatan yang menampilkan visualisasi jumlah produk menurut kategori.

Jenis Visualisasi

Ini adalah berbagai jenis visualisasi yang dapat Anda buat di Databricks, masing-masing baik untuk jenis wawasan data tertentu. Poin utama:

  • Bagan batang/ Bagan garis/Bagan area: untuk memperlihatkan tren dari waktu ke waktu, perbandingan kategoris, atau keduanya. Berguna untuk melihat bagaimana metrik berkembang.

  • Bagan pai: bagus untuk memperlihatkan bagian proporsional secara keseluruhan (tetapi tidak untuk rangkaian waktu).

  • Histogram: untuk melihat distribusi data numerik (bagaimana nilai disebarkan, diklusterkan).

  • : berguna untuk memvisualisasikan dua sumbu kategoris dengan pewarnaan berdasarkan nilai numerik, membantu mengidentifikasi pola antar kelompok.

  • Bagan sebar /Gelembung: memperlihatkan hubungan antara dua (atau lebih) variabel numerik; gelembung memungkinkan penggunaan ukuran atau warna sebagai dimensi ketiga.

  • Plot kotak: untuk membandingkan distribusi (sebaran, kuartil, outlier) di seluruh kategori.

  • Bagan kombo: campuran garis dan batang dalam bagan yang sama, berguna di mana Anda ingin membandingkan metrik yang berbeda dengan skala yang berbeda.

  • Tabel pivot: memungkinkan Anda membentuk ulang dan mengagregasi data dalam bentuk tabel (seperti SQL PIVOT/GROUP BY), berguna untuk analisis lintas tab.

  • Jenis khusus: analisis kohor (pelacakan kelompok dari waktu ke waktu), tampilan penghitung (menyoroti metrik ringkasan tunggal, mungkin terhadap target), corong, visualisasi peta (koropleth, penanda), word cloud, dll. Ini lebih bersifat khusus.

Fungsionalitas visualisasi bawaan di notebook berguna saat Anda ingin meringkas data dengan cepat secara visual. Saat Anda ingin memiliki kontrol lebih besar atas bagaimana data diformat, atau untuk menampilkan nilai yang telah Anda agregat dalam kueri, Anda harus mempertimbangkan untuk menggunakan paket grafis untuk membuat visualisasi Anda sendiri.

Menggunakan paket grafik dalam kode

Ada banyak paket grafik yang dapat Anda gunakan untuk membuat visualisasi data dalam kode. Secara khusus, Python mendukung banyak pilihan paket; sebagian besar dibangun di pustaka Matplotlib dasar. Keluaran dari pustaka grafis dapat dirender dalam notebook, sehingga memudahkan penggabungan kode untuk mengambil dan memanipulasi data dengan visualisasi data inline dan sel markdown untuk menyertakan komentar.

Misalnya, Anda dapat menggunakan kode PySpark berikut untuk menggabungkan data dari data produk hipotetis yang dieksplorasi sebelumnya dalam modul ini, dan menggunakan Matplotlib untuk membuat diagram dari data yang dikumpulkan.

from matplotlib import pyplot as plt

# Get the data as a Pandas dataframe
data = spark.sql("SELECT Category, COUNT(ProductID) AS ProductCount \
                  FROM products \
                  GROUP BY Category \
                  ORDER BY Category").toPandas()

# Clear the plot area
plt.clf()

# Create a Figure
fig = plt.figure(figsize=(12,8))

# Create a bar plot of product counts by category
plt.bar(x=data['Category'], height=data['ProductCount'], color='orange')

# Customize the chart
plt.title('Product Counts by Category')
plt.xlabel('Category')
plt.ylabel('Products')
plt.grid(color='#95a5a6', linestyle='--', linewidth=2, axis='y', alpha=0.7)
plt.xticks(rotation=70)

# Show the plot area
plt.show()

Pustaka Matplotlib mengharuskan data berada dalam dataframe Pandas daripada dataframe Spark, sehingga metode toPandas digunakan untuk mengonversinya. Kode kemudian membuat figur dengan ukuran tertentu dan memplot diagram batang dengan beberapa pengaturan properti khusus sebelum menampilkan plot yang dihasilkan.

Diagram yang dihasilkan oleh kode akan terlihat mirip dengan gambar berikut:

Bagan batang memperlihatkan jumlah produk menurut kategori.

Anda dapat menggunakan pustaka Matplotlib untuk membuat berbagai jenis bagan; atau jika disukai, Anda dapat menggunakan pustaka lain seperti Seaborn untuk membuat bagan yang sangat disesuaikan.

Nota

Perpustakaan Matplotlib dan Seaborn mungkin sudah terpasang pada kluster Databricks, tergantung pada Databricks Runtime yang digunakan untuk kluster tersebut. Jika tidak, atau jika Anda ingin menggunakan pustaka lain yang belum diinstal, Anda dapat menambahkannya ke kluster. Lihat Pustaka Kluster di dokumentasi Azure Databricks untuk detailnya.