# Membuat nilai x
x <- seq(-4, 4, length.out = 100)
# Menghitung nilai distribusi normal
y <- dnorm(x, mean = 0, sd = 1)
# Membuat kurva distribusi normal
plot(x, y,
type = "l",
main = "Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
lwd = 2)

# Membuat nilai x
x <- seq(-4, 4, length.out = 500)
# Distribusi normal
y <- dnorm(x, mean = 0, sd = 1)
# Membuat kurva
plot(x, y,
type = "l",
lwd = 3,
col = "blue",
main = "Kurva Distribusi Normal",
xlab = "Nilai Z",
ylab = "Kepadatan")
# Mengisi area di bawah kurva
polygon(c(x, rev(x)),
c(y, rep(0, length(y))),
col = "lightblue",
border = NA)
# Menggambar ulang garis kurva
lines(x, y, lwd = 3, col = "blue")
# Garis tengah / mean
abline(v = 0, col = "red", lwd = 2, lty = 2)
# Keterangan mean
text(0, 0.05, "Mean = 0", col = "red")

# Parameter distribusi
mu <- 10
varians <- 2
sd <- sqrt(varians)
# Membuat nilai x
x <- seq(mu - 4*sd, mu + 4*sd, length.out = 500)
# Nilai distribusi normal
y <- dnorm(x, mean = mu, sd = sd)
# Plot kurva
plot(x, y,
type = "l",
lwd = 3,
col = "blue",
main = "Kurva Distribusi Normal (μ = 10, Varians = 2)",
xlab = "Nilai X",
ylab = "Kepadatan")
# Mengisi area bawah kurva
polygon(c(x, rev(x)),
c(y, rep(0, length(y))),
col = "lightblue",
border = NA)
# Gambar ulang kurva
lines(x, y, lwd = 3, col = "blue")
# Garis tengah (mean)
abline(v = mu, col = "red", lwd = 2, lty = 2)
# Label mean
text(mu, max(y) * 0.95,
paste("μ =", mu),
col = "red")

# Parameter
mu1 <- 10
var1 <- 2
sd1 <- sqrt(var1)
mu2 <- 12
var2 <- 2
sd2 <- sqrt(var2)
mu3 <- 14
var3 <- 2
sd3 <- sqrt(var3)
# Nilai x
x <- seq(3, 21, length.out = 500)
# Kurva normal
y1 <- dnorm(x, mu1, sd1)
y2 <- dnorm(x, mu2, sd2)
y3 <- dnorm(x, mu3, sd3)
# Kurva pertama
plot(x, y1,
type = "l",
lwd = 3,
col = "blue",
main = "Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan")
# Kurva kedua dan ketiga
lines(x, y2, lwd = 3, col = "red")
lines(x, y3, lwd = 3, col = "green")
# Garis tengah masing-masing
abline(v = mu1, col = "blue", lty = 2)
abline(v = mu2, col = "red", lty = 2)
abline(v = mu3, col = "green", lty = 2)
# Keterangan
legend("topright",
legend = c("μ = 10", "μ = 12", "μ = 14"),
col = c("blue", "red", "green"),
lwd = 3)

# Parameter
mu1 <- 10
var1 <- 2
sd1 <- sqrt(var1)
mu2 <- 12
var2 <- 4
sd2 <- sqrt(var2)
mu3 <- 14
var3 <- 1
sd3 <- sqrt(var3)
# Nilai x
x <- seq(3, 21, length.out = 500)
# Distribusi normal
y1 <- dnorm(x, mean = mu1, sd = sd1)
y2 <- dnorm(x, mean = mu2, sd = sd2)
y3 <- dnorm(x, mean = mu3, sd = sd3)
# Kurva pertama
plot(x, y1,
type = "l",
lwd = 3,
col = "blue",
main = "Kurva Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y1, y2, y3) * 1.1))
# Kurva kedua dan ketiga
lines(x, y2, lwd = 3, col = "red")
lines(x, y3, lwd = 3, col = "green")
# Garis mean
abline(v = mu1, col = "blue", lty = 2)
abline(v = mu2, col = "red", lty = 2)
abline(v = mu3, col = "green", lty = 2)
# Keterangan
legend("topright",
legend = c(
"μ = 10, Var = 2",
"μ = 12, Var = 4",
"μ = 14, Var = 1"
),
col = c("blue", "red", "green"),
lwd = 3,
lty = 1)

# SIMULASI DISTRIBUSI NORMAL
# Parameter setiap kurva
mu1 <- 1
sigma1 <- 1
mu2 <- 2
sigma2 <- 1
mu3 <- 5
sigma3 <- 5
mu4 <- 10
sigma4 <- 3
mu5 <- 1.50
sigma5 <- 0.10
# Membuat nilai X
x <- seq(-20, 30, length.out = 1000)
# Menghitung distribusi normal
y1 <- dnorm(x, mean = mu1, sd = sigma1)
y2 <- dnorm(x, mean = mu2, sd = sigma2)
y3 <- dnorm(x, mean = mu3, sd = sigma3)
y4 <- dnorm(x, mean = mu4, sd = sigma4)
y5 <- dnorm(x, mean = mu5, sd = sigma5)
# Membuat grafik kurva pertama
plot(x, y1,
type = "l",
lwd = 3,
col = "blue",
main = "Simulasi Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan",
ylim = c(0, max(y5) * 1.1))
# Menambahkan kurva lainnya
lines(x, y2, col = "red", lwd = 3)
lines(x, y3, col = "green", lwd = 3)
lines(x, y4, col = "purple", lwd = 3)
lines(x, y5, col = "orange", lwd = 3)
# Garis tengah / rata-rata (MU)
abline(v = mu1, col = "blue", lty = 2)
abline(v = mu2, col = "red", lty = 2)
abline(v = mu3, col = "green", lty = 2)
abline(v = mu4, col = "purple", lty = 2)
abline(v = mu5, col = "orange", lty = 2)
# Keterangan kurva
legend("topright",
legend = c(
"Kurva 1: μ = 1, σ = 1",
"Kurva 2: μ = 2, σ = 1",
"Kurva 3: μ = 5, σ = 5",
"Kurva 4: μ = 10, σ = 3",
"Kurva 5: μ = 1,50, σ = 0,10"
),
col = c("blue", "red", "green", "purple", "orange"),
lwd = 3,
cex = 0.8)

# SIMULASI DISTRIBUSI NORMAL
# Rata-rata (MU)
mu <- c(1, 2, 5, 10, 1.50)
# Simpangan baku (SIGMA)
sigma <- c(1, 1, 5, 3, 0.10)
# Warna
warna <- c("blue", "red", "green", "purple", "orange")
# Membuat 5 grafik tersusun ke bawah
par(mfrow = c(5, 1),
mar = c(3, 4, 2, 1))
for (i in 1:5) {
# Batas X menyesuaikan masing-masing distribusi
x <- seq(mu[i] - 4*sigma[i],
mu[i] + 4*sigma[i],
length.out = 500)
# Distribusi normal
y <- dnorm(x,
mean = mu[i],
sd = sigma[i])
# Grafik
plot(x, y,
type = "l",
lwd = 3,
col = warna[i],
main = paste("Kurva", i,
": μ =", mu[i],
", σ =", sigma[i]),
xlab = "Nilai X",
ylab = "Kepadatan")
# Area bawah kurva
polygon(c(x, rev(x)),
c(y, rep(0, length(y))),
col = adjustcolor(warna[i], alpha.f = 0.25),
border = NA)
# Kurva
lines(x, y,
col = warna[i],
lwd = 3)
# Garis rata-rata
abline(v = mu[i],
col = "black",
lty = 2,
lwd = 2)
}

# SIMULASI DISTRIBUSI NORMAL
# Data sesuai tabel
mu <- c(1, 2, 5, 10, 1.50)
sigma <- c(1, 1, 5, 3, 0.10)
# Warna kurva
warna <- c("blue", "red", "green3", "purple", "orange")
# Nilai X
x <- seq(-10, 20, length.out = 2000)
# Grafik kosong
plot(x, rep(0, length(x)),
type = "n",
ylim = c(0, 1.15),
xlim = c(-5, 16),
main = "Simulasi Distribusi Normal",
xlab = "Nilai X",
ylab = "Kepadatan Relatif")
# Membuat 5 kurva
for(i in 1:5) {
# Distribusi normal
y <- dnorm(x,
mean = mu[i],
sd = sigma[i])
# Normalisasi supaya tinggi maksimum = 1
y <- y / max(y)
# Area bawah kurva
polygon(c(x, rev(x)),
c(y, rep(0, length(y))),
col = adjustcolor(warna[i], alpha.f = 0.15),
border = NA)
# Kurva
lines(x, y,
col = warna[i],
lwd = 3)
# Garis mean
abline(v = mu[i],
col = warna[i],
lty = 2,
lwd = 1.5)
}
# Legenda
legend("topright",
legend = c(
"μ = 1, σ = 1",
"μ = 2, σ = 1",
"μ = 5, σ = 5",
"μ = 10, σ = 3",
"μ = 1,50, σ = 0,10"
),
col = warna,
lwd = 3,
lty = 1,
bg = "white",
cex = 0.8)

# Nilai x
x <- seq(-5, 5, length.out = 1000)
# Derajat bebas
df <- c(1, 2, 5, 10, 30)
# Warna
warna <- c("blue", "red", "green3", "purple", "orange")
# Grafik kosong
plot(x, dt(x, df = df[1]),
type = "l",
lwd = 3,
col = warna[1],
main = "Kurva Distribusi t",
xlab = "Nilai t",
ylab = "Kepadatan",
ylim = c(0, 0.45))
# Menambahkan kurva lainnya
for(i in 2:length(df)) {
lines(x,
dt(x, df = df[i]),
col = warna[i],
lwd = 3)
}
# Garis tengah
abline(v = 0, col = "black", lty = 2)
# Legenda
legend("topright",
legend = paste("df =", df),
col = warna,
lwd = 3,
bg = "white")

df1 <- c(1, 2, 5, 10)
df2 <- c(5, 5, 10, 20)
warna <- c("blue", "red", "green3", "purple")
x <- seq(0, 10, length.out = 1000)
plot(x, df(x, df1[1], df2[1]),
type = "n",
main = "Simulasi Distribusi F",
xlab = "Nilai F",
ylab = "Kepadatan",
xlim = c(0, 10),
ylim = c(0, 1))
for(i in 1:4) {
y <- df(x, df1[i], df2[i])
polygon(c(x, rev(x)),
c(y, rep(0, length(x))),
col = adjustcolor(warna[i], alpha.f = 0.15),
border = NA)
lines(x, y,
col = warna[i],
lwd = 3)
}
legend("topright",
legend = c(
"df1 = 1, df2 = 5",
"df1 = 2, df2 = 5",
"df1 = 5, df2 = 10",
"df1 = 10, df2 = 20"
),
col = warna,
lwd = 3,
bg = "white")

# Derajat bebas
df <- c(1, 2, 5, 10, 20)
# Warna
warna <- c("blue", "red", "green3", "purple", "orange")
# Nilai X
x <- seq(0, 30, length.out = 1000)
# Grafik kosong
plot(x, dchisq(x, df = df[1]),
type = "l",
lwd = 3,
col = warna[1],
main = "Kurva Distribusi Chi-Square",
xlab = expression(chi^2),
ylab = "Kepadatan",
xlim = c(0, 30),
ylim = c(0, 0.5))
# Menambahkan kurva lainnya
for(i in 2:length(df)) {
lines(x,
dchisq(x, df = df[i]),
col = warna[i],
lwd = 3)
}
# Garis putus-putus
abline(v = 0, col = "black", lty = 2)
# Legenda
legend("topright",
legend = paste("df =", df),
col = warna,
lwd = 3,
bg = "white")

# ==========================================
# GABUNGAN DISTRIBUSI
# Gamma, Weibull, Eksponensial, Pareto, Uniform
# ==========================================
x <- seq(0, 10, length.out = 1000)
# Warna
warna <- c("blue", "red", "green3", "purple", "orange")
# Fungsi Pareto
dpareto <- function(x, alpha=3, xm=1) {
ifelse(x >= xm, alpha * xm^alpha / x^(alpha+1), 0)
}
# Membuat grafik kosong
plot(x, dgamma(x, shape=2, rate=1),
type="n",
main="Kurva Distribusi Peluang",
xlab="X",
ylab="Kepadatan",
xlim=c(0,10),
ylim=c(0,1.1))
# 1. Gamma
lines(x, dgamma(x, shape=2, rate=1),
col=warna[1], lwd=3)
# 2. Weibull
lines(x, dweibull(x, shape=2, scale=1),
col=warna[2], lwd=3)
# 3. Eksponensial
lines(x, dexp(x, rate=1),
col=warna[3], lwd=3)
# 4. Pareto
lines(x, dpareto(x, alpha=3, xm=1),
col=warna[4], lwd=3)
# 5. Uniform
lines(x, dunif(x, min=0, max=5),
col=warna[5], lwd=3)
# Legenda
legend("topright",
legend=c("Gamma",
"Weibull",
"Eksponensial",
"Pareto",
"Uniform"),
col=warna,
lwd=3,
bg="white")

# ==========================================
# DISTRIBUSI GAMMA, WEIBULL, EKSPONENSIAL,
# PARETO, DAN UNIFORM
# ==========================================
# Membagi layar menjadi 1 baris 5 kolom
par(mfrow=c(2,3))
x <- seq(0,10,length.out=1000)
# 1. GAMMA
plot(x, dgamma(x, shape=2, rate=1),
type="l", lwd=3, col="blue",
main="Gamma",
xlab="X", ylab="Kepadatan")
# 2. WEIBULL
plot(x, dweibull(x, shape=2, scale=1),
type="l", lwd=3, col="red",
main="Weibull",
xlab="X", ylab="Kepadatan")
# 3. EKSPONENSIAL
plot(x, dexp(x, rate=1),
type="l", lwd=3, col="green3",
main="Eksponensial",
xlab="X", ylab="Kepadatan")
# 4. PARETO
dpareto <- function(x, alpha=3, xm=1) {
ifelse(x >= xm,
alpha*xm^alpha/x^(alpha+1),
0)
}
plot(x, dpareto(x),
type="l", lwd=3, col="purple",
main="Pareto",
xlab="X", ylab="Kepadatan")
# 5. UNIFORM
plot(x, dunif(x, min=0, max=5),
type="l", lwd=3, col="orange",
main="Uniform",
xlab="X", ylab="Kepadatan")
# Kembali ke tampilan normal
par(mfrow=c(1,1))
