# 1. Membuat data
data <- data.frame(
  Y  = c(57.5, 52.8, 61.3, 67.0, 53.5, 62.7, 56.2, 68.5, 69.2),
  X1 = c(78,   69,   77,   88,   67,   80,   74,   94,   102),
  X2 = c(2.75, 2.15, 4.41, 5.52, 3.21, 4.32, 2.31, 4.3,  3.71),
  X3 = c(29.5, 26.3, 32.2, 36.5, 27.2, 27.7, 28.3, 30.3, 28.7)
)

# Memberi nama baris agar mudah dibaca (misal Bayi ke-1 s/d 9)
rownames(data) <- paste0("Bayi_", 1:9)

# 2. Install package jika belum punya
# install.packages("pheatmap")

# 3. Aktifkan package
library(pheatmap)

# -----------------------------------------------------
# OPSI 1: HEATMAP KORELASI (Melihat hubungan antar variabel)
# -----------------------------------------------------
cor_matrix <- cor(data)  # Hitung korelasi Pearson

pheatmap(cor_matrix,
         main = "Heatmap Korelasi Antar Variabel",
         display_numbers = TRUE,          # Tampilkan angka korelasinya
         number_format = "%.2f",          # 2 angka di belakang koma
         color = colorRampPalette(c("blue", "white", "red"))(50),
         fontsize_number = 12)

# -----------------------------------------------------
# OPSI 2: HEATMAP DATA TERSTANDARISASI (Melihat pola per bayi)
# -----------------------------------------------------
# Fungsi scale() akan mengubah semua data ke skala Z-score (rata-rata=0, sd=1)
# agar satuan (hari, kg, cm) tidak mempengaruhi warna.

pheatmap(scale(data),
         main = "Heatmap Data Terskala (Z-Score) per Bayi",
         cluster_rows = TRUE,            # Mengelompokkan bayi yang mirip
         cluster_cols = TRUE,            # Mengelompokkan variabel yang mirip
         display_numbers = TRUE,
         number_format = "%.2f",
         color = colorRampPalette(c("navy", "white", "red"))(50))