Skip to main content
  1. Belajar/
  2. Data Science with Python/
  3. Visualisasi Data Lanjutan dengan Seaborn/

Tips dan Trik untuk Visualisasi Efektif

15 mins· loading · loading ·
Statistik Deskriptif dengan Python - This article is part of a series.
Part 7: This Article

Menciptakan visualisasi data yang efektif membutuhkan perhatian terhadap detail dan strategi yang baik. Dalam bagian ini, kita akan mengeksplorasi beberapa tips dan trik untuk meningkatkan kualitas dan daya saing visualisasi Anda.

A. Pemilihan Warna yang Tepat
#

Pemilihan warna yang bijaksana dapat memberikan dampak besar pada interpretasi visualisasi. Pastikan warna yang Anda pilih memiliki kontrast yang mencukupi dan dapat dibedakan dengan jelas. Gunakan palet warna yang sesuai dengan konteks data dan hindari warna yang terlalu mencolok atau sulit dibedakan.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(10, 6))

# Plot Seaborn dengan palet warna yang dipilih
sns.scatterplot(x="sepal length (cm)", y="sepal width (cm)", hue="species", data=iris_df, palette="Set1")

# Menambahkan elemen-elemen Matplotlib
plt.title("Scatter Plot Sepal Length vs Sepal Width")
plt.xlabel("Sepal Length (cm)")
plt.ylabel("Sepal Width (cm)")
plt.legend(title="Species")
plt.savefig("assets/images/seaborn_tips1.jpg")

plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menggunakan palet warna “Set1” dari Seaborn untuk memberikan warna yang dapat dibedakan dengan jelas pada scatter plot.

B. Sederhanakan dan Fokuskan Informasi
#

Terlalu banyak informasi dalam satu visualisasi dapat membuatnya sulit dimengerti. Sederhanakan plot Anda dan fokuskan pada poin-poin kunci yang ingin Anda sampaikan. Pilih metode visualisasi yang paling cocok untuk menyampaikan pesan Anda tanpa kebingungan.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(8, 6))

# Plot Seaborn dengan subset data untuk fokus pada spesies tertentu
sns.scatterplot(x="sepal length (cm)", y="sepal width (cm)", hue="species", data=iris_df[iris_df['species']=='setosa'])

# Menambahkan elemen-elemen Matplotlib
plt.title("Scatter Plot Sepal Length vs Sepal Width (Setosa)")
plt.xlabel("Sepal Length (cm)")
plt.ylabel("Sepal Width (cm)")
plt.savefig("assets/images/seaborn_tips2.jpg")
plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menggunakan subset data hanya untuk spesies “setosa”, menyederhanakan visualisasi untuk fokus pada satu kategori.

C. Anotasi dan Label yang Jelas
#

Pastikan elemen-elemen penting dalam visualisasi Anda dijelaskan dengan baik. Tambahkan anotasi untuk menyoroti poin-poin kunci dan berikan label yang jelas pada sumbu-sumbu dan elemen lainnya. Hal ini membantu pembaca untuk memahami konteks dan interpretasi visualisasi.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(10, 6))

# Plot Seaborn
scatter_plot = sns.scatterplot(x="sepal length (cm)", y="sepal width (cm)", hue="species", data=iris_df)

# Menambahkan elemen-elemen Matplotlib
plt.title("Scatter Plot Sepal Length vs Sepal Width")
plt.xlabel("Sepal Length (cm)")
plt.ylabel("Sepal Width (cm)")
plt.legend(title="Species")

# Menambahkan anotasi pada poin tertentu
scatter_plot.annotate('Outlier', xy=(5.0, 4.0), xytext=(4.8, 3.5),
                      arrowprops=dict(facecolor='red', shrink=0.05), fontsize=10, color='red')
plt.savefig("assets/images/seaborn_tips3.jpg")
plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menambahkan anotasi teks untuk menyoroti poin yang dianggap sebagai outlier pada scatter plot.

D. Gunakan Plot yang Sesuai
#

Pemilihan jenis plot yang tepat sangat penting. Scatter plot cocok untuk menunjukkan hubungan antara dua variabel, sementara bar plot baik untuk perbandingan kategori. Pilih plot yang paling sesuai dengan tujuan analisis Anda.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(10, 6))

# Menggunakan box plot untuk menampilkan distribusi sepal length berdasarkan spesies
sns.boxplot(x="species", y="sepal length (cm)", data=iris_df, palette="Set2")

# Menambahkan elemen-elemen Matplotlib
plt.title("Distribution of Sepal Length by Species")
plt.xlabel("Species")
plt.ylabel("Sepal Length (cm)")
plt.savefig("assets/images/seaborn_tips4.jpg")
plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menggunakan box plot untuk membandingkan distribusi panjang sepal pada setiap spesies dalam dataset iris.

E. Interaktivitas (Jika Diperlukan)
#

Jika platform atau kebutuhan analisis Anda memungkinkan, pertimbangkan untuk menambahkan elemen interaktivitas pada visualisasi Anda. Ini dapat memberikan pengalaman pengguna yang lebih kaya dan memungkinkan eksplorasi lebih lanjut.

import seaborn as sns
import matplotlib.pyplot as plt
import plotly.express as px

# Menggunakan dataframe iris_df dari materi pendahuluan
fig = px.scatter(iris_df, x="sepal length (cm)", y="sepal width (cm)", color="species", title="Interactive Scatter Plot")
fig.show()

Penjelasan:

  • Kode ini menggunakan Plotly Express untuk membuat scatter plot interaktif dengan warna berdasarkan spesies pada dataset iris.

F. Perhatikan Skala dan Proporsi
#

Pastikan skala dan proporsi dalam visualisasi Anda benar dan sesuai dengan konteksnya. Pemilihan skala yang salah dapat menyesatkan interpretasi data. Perhatikan label sumbu dan pastikan mereka memberikan informasi yang jelas tentang nilai yang diwakili.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(10, 6))

# Violin plot untuk menunjukkan distribusi sepal width berdasarkan spesies
sns.violinplot(x="species", y="sepal width (cm)", data=iris_df, palette="Set2")

# Menambahkan elemen-elemen Matplotlib
plt.title("Distribution of Sepal Width by Species")
plt.xlabel("Species")
plt.ylabel("Sepal Width (cm)")
plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menggunakan violin plot untuk menunjukkan distribusi lebar sepal pada setiap spesies dalam dataset iris, dengan memperhatikan skala dan proporsi.

G. Konteks dan Narasi
#

Sertakan narasi yang mendukung visualisasi Anda. Jelaskan temuan penting, tren, atau anomali yang terlihat dalam data. Visualisasi yang disajikan dengan konteks dan cerita dapat memberikan pemahaman yang lebih baik kepada pemirsa.

import seaborn as sns
import matplotlib.pyplot as plt

# Menggunakan dataframe iris_df dari materi pendahuluan
plt.figure(figsize=(10, 6))

# Plot Seaborn
sns.scatterplot(x="sepal length (cm)", y="sepal width (cm)", hue="species", data=iris_df)

# Menambahkan elemen-elemen Matplotlib
plt.title("Scatter Plot Sepal Length vs Sepal Width")
plt.xlabel("Sepal Length (cm)")
plt.ylabel("Sepal Width (cm)")
plt.legend(title="Species")

# Menambahkan narasi
plt.text(4.5, 3.5, "Terdapat korelasi negatif antara panjang dan lebar sepal", fontsize=12, color='red')
plt.savefig("assets/images/seaborn_tips7.jpg")
plt.show()

Hasilnya:

Penjelasan:

  • Kode ini menambahkan teks naratif untuk memberikan konteks dan interpretasi lebih lanjut pada scatter plot.

H. Ujilah pada Berbagai Audience
#

Sebelum mempublikasikan atau menyajikan visualisasi, uji plot Anda pada berbagai audience. Pastikan bahwa visualisasi dapat dipahami oleh orang yang mungkin tidak memiliki pengetahuan yang sama dengan Anda tentang subjeknya.

Dengan mengikuti tips dan trik ini, Anda dapat meningkatkan efektivitas visualisasi data Anda dan membuatnya lebih efektif dalam menyampaikan informasi kepada audiens. Jangan ragu untuk eksperimen dan menyesuaikan pendekatan ini sesuai dengan kebutuhan dan karakteristik data Anda.

Statistik Deskriptif dengan Python - This article is part of a series.
Part 7: This Article