{
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "# Visualisasi Data Statistik dengan Seaborn\n",
        "\n",
        "**Seaborn** adalah pustaka visualisasi tingkat tinggi yang dibangun di atas Matplotlib. Seaborn dirancang untuk menghasilkan grafik statistik yang indah dan informatif secara otomatis."
      ],
      "outputs": []
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 1. Inisiasi & Menyiapkan Dataset Sampel"
      ],
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {},
      "source": [
        "import seaborn as sns\n",
        "import matplotlib.pyplot as plt\n",
        "import pandas as pd\n",
        "\n",
        "# Mengatur tema visual modern bawaan seaborn\n",
        "sns.set_theme(style=\"whitegrid\")\n",
        "\n",
        "# Membuat dataset transaksi e-commerce\n",
        "data_transaksi = pd.DataFrame({\n",
        "    'Kategori': ['Elektronik', 'Pakaian', 'Elektronik', 'Buku', 'Pakaian', 'Elektronik', 'Buku', 'Pakaian', 'Elektronik', 'Buku'] * 10,\n",
        "    'Rating': [4.5, 4.2, 4.8, 3.9, 4.1, 4.6, 4.0, 3.8, 4.9, 4.3] * 10,\n",
        "    'Harga_Ribu': [1200, 250, 1800, 95, 320, 2100, 120, 180, 1500, 85] * 10,\n",
        "    'Metode_Bayar': ['QRIS', 'Transfer', 'Kartu Kredit', 'QRIS', 'QRIS', 'Kartu Kredit', 'Transfer', 'QRIS', 'Kartu Kredit', 'Transfer'] * 10\n",
        "})\n",
        "\n",
        "data_transaksi.head()"
      ],
      "outputs": [],
      "execution_count": null
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 2. Barplot dengan Kategorisasi Warna (`hue`)"
      ],
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {},
      "source": [
        "plt.figure(figsize=(10, 5))\n",
        "sns.barplot(data=data_transaksi, x='Kategori', y='Harga_Ribu', hue='Metode_Bayar', palette='Set2')\n",
        "plt.title('Rata-rata Nilai Transaksi per Kategori & Metode Pembayaran', fontsize=13, fontweight='bold')\n",
        "plt.ylabel('Rata-rata Harga (Ribu Rp)')\n",
        "plt.show()"
      ],
      "outputs": [],
      "execution_count": null
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 3. Histogram Distribusi dengan Kurva KDE (`sns.histplot`)\n",
        "KDE (*Kernel Density Estimate*) memperlihatkan perkiraan kurva kepadatan probabilitas kontinu."
      ],
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {},
      "source": [
        "plt.figure(figsize=(9, 5))\n",
        "sns.histplot(data=data_transaksi, x='Rating', kde=True, color='#0284c7', bins=10)\n",
        "plt.title('Sebaran Distribusi Rating Produk dengan Kurva KDE', fontsize=13, fontweight='bold')\n",
        "plt.xlabel('Rating Produk (Skala 1 - 5)')\n",
        "plt.show()"
      ],
      "outputs": [],
      "execution_count": null
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "## 4. Scatter Plot & Boxplot Statistik Multi-Dimensi"
      ],
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {},
      "source": [
        "plt.figure(figsize=(9, 5))\n",
        "sns.boxplot(data=data_transaksi, x='Kategori', y='Harga_Ribu', palette='pastel')\n",
        "plt.title('Distribusi Variasi Harga per Kategori Produk (Boxplot)', fontsize=13, fontweight='bold')\n",
        "plt.ylabel('Harga Produk (Ribu Rp)')\n",
        "plt.show()"
      ],
      "outputs": [],
      "execution_count": null
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "Python 3",
      "language": "python",
      "name": "python3"
    },
    "language_info": {
      "name": "python",
      "version": "3.11.0"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 2
}